Skip to content

Instantly share code, notes, and snippets.

@yv84
Last active July 21, 2023 17:44
Show Gist options
  • Save yv84/44706592cb2917904f72 to your computer and use it in GitHub Desktop.
Save yv84/44706592cb2917904f72 to your computer and use it in GitHub Desktop.
#[root@localhost share]# cat ~/.bashrc
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
export ALFRESCO_ADMIN_LOGIN=admin
export ALFRESCO_ADMIN_PASSWORD=XPa\$\$w0rd
export ALFRESCO_SOURCE_CODE_ROOT_FOLDER=/root/alfresco/rsprs/rsprs
alias statemachine_all='python -c '\''import urllib2,base64,json,os,sys,time;from time import gmtime,strftime;username,password=os.environ["ALFRESCO_ADMIN_LOGIN"],os.environ["ALFRESCO_ADMIN_PASSWORD"];sm=["rsprs-start-dev-prns_document","rsprs-proposals-list_document","rsprs-review-offer-prns_document","rsprs-proposal-changes-prns_document","rsprs-offer-theme-prns-nat_document","rsprs-offer-theme-prns-int_document","rsprs-financing_document","rsprs-nds_document","rsprs-review_document","rsprs-primary-normative-expertise_document","rsprs-comment-collection_document","rsprs-standart-draft-final-edition_document","rsprs-normcontrol_document","rsps-decision-making_document","rsprs-docpassport_rsprs-docpassport","rsprs-recommendations_document","rsprs-terms_document","rsprs-terms-analog_document"];a=("Authorization", "Basic %s" % base64.encodestring("%s:%s" % (username, password)).replace("\n", ""));exec("""def publish(sm):p="echo publish "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/import?default=true&stateMachineId="+sm);r.add_header(a[0],a[1]);return urllib2.urlopen(r)""");exec("""def deploy(nodeRef,sm):p="echo deploy "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/diagram?statemachineNodeRef="+json.loads(nodeRef.read())["packageNodeRef"]+"&type=deploy&comment="+strftime("%Y-%m-%d_%H-%M-%S", gmtime()));r.add_header(a[0],a[1]);urllib2.urlopen(r);return""");exec("""def run(f, *args):\n while True:\n try: return f(*args);\n except (urllib2.HTTPError, urllib2.URLError) as e: sys.stdout.write(str(e));sys.stdout.flush();time.sleep(10);""");[run(deploy, run(publish, ii), ii) for ii in sm];'\'''
alias alfresco_refresh='cd ${ALFRESCO_SOURCE_CODE_ROOT_FOLDER}/lecm/module-rsprs && git pull && cd repo && mvn clean package -Dmaven.alfresco.warLocation=/opt/alfresco-4.2.e/tomcat/webapps/alfresco && cd ../share && mvn clean package -Dmaven.alfresco.warLocation=/opt/alfresco-4.2.e/tomcat/webapps/share && curl -X POST -u ${ALFRESCO_ADMIN_LOGIN}:${ALFRESCO_ADMIN_PASSWORD} -d "reset=on" http://localhost:8080/share/page/index && curl -X POST -u ${ALFRESCO_ADMIN_LOGIN}:${ALFRESCO_ADMIN_PASSWORD} -d "reset=on" http://localhost:8080/alfresco/s/index'
alias alfresco_restart='cd ${ALFRESCO_SOURCE_CODE_ROOT_FOLDER}/lecm/module-rsprs && git pull && cd repo && mvn clean package -Dmaven.alfresco.warLocation=/opt/alfresco-4.2.e/tomcat/webapps/alfresco && cd ../share && mvn clean package -Dmaven.alfresco.warLocation=/opt/alfresco-4.2.e/tomcat/webapps/share && /opt/alfresco-4.2.e/./alfresco.sh restart'
smachine() {
python -c 'import urllib2,base64,json,os,sys,time;from time import gmtime,strftime;username,password=os.environ["ALFRESCO_ADMIN_LOGIN"],os.environ["ALFRESCO_ADMIN_PASSWORD"];sm=[sys.argv[1]];a=("Authorization", "Basic %s" % base64.encodestring("%s:%s" % (username, password)).replace("\n", ""));exec("""def publish(sm):p="echo publish "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/import?default=true&stateMachineId="+sm);r.add_header(a[0],a[1]);return urllib2.urlopen(r)""");exec("""def deploy(nodeRef,sm):p="echo deploy "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/diagram?statemachineNodeRef="+json.loads(nodeRef.read())["packageNodeRef"]+"&type=deploy&comment="+strftime("%Y-%m-%d_%H-%M-%S", gmtime()));r.add_header(a[0],a[1]);urllib2.urlopen(r);return""");exec("""def run(f, *args):\n while True:\n try: return f(*args);\n except (urllib2.HTTPError, urllib2.URLError) as e: sys.stdout.write(str(e));sys.stdout.flush();time.sleep(10);""");[run(deploy, run(publish, ii), ii) for ii in sm];' $1
}
alias smachine=smachine
smachine() {
python -c 'import urllib2,base64,json,os,sys;from time import gmtime,strftime;username,password=os.environ["ALFRESCO_ADMIN_LOGIN"],os.environ["ALFRESCO_ADMIN_PASSWORD"];\
sm=[sys.argv[1]];a=("Authorization", "Basic %s" % base64.encodestring("%s:%s" % (username, password)).replace("\n", ""));\
exec("""def get_sm(sm):p="echo get sm "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/process?statemachineId="+sm);r.add_header(a[0],a[1]);urllib2.urlopen(r);return sm""");\
exec("""def publish(sm):p="echo publish "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/import?default=true&stateMachineId="+sm);r.add_header(a[0],a[1]);return urllib2.urlopen(r)""");\
exec("""def deploy(nodeRef,sm):p="echo deploy "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/diagram?statemachineNodeRef="+json.loads(nodeRef.read())["packageNodeRef"]+"&type=deploy&comment="+strftime("%Y-%m-%d_%H-%M-%S", gmtime()));r.add_header(a[0],a[1]);urllib2.urlopen(r);return""");\
[deploy(publish(get_sm(ii)),ii) for ii in sm];' $1
}
#export STATEMACHINE_DOCUMENTS="x_document, y_document"
#alias statemachine_all='python -c '\''import urllib2,base64,json,os,sys;from time import gmtime,strftime;username,password=os.environ["ALFRESCO_ADMIN_LOGIN"],os.environ["ALFRESCO_ADMIN_PASSWORD"];sm=[ii.strip() for ii in os.environ["STATEMACHINE_DOCUMENTS"].split(",")];cr="\n";el="";de="deploy error";d="***";a=("Authorization", "Basic %s" % base64.encodestring("%s:%s" % (username, password)).replace(cr, el));exec("""def publish(sm):p="echo publish "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/import?default=true&stateMachineId="+sm);r.add_header(a[0],a[1]);return urllib2.urlopen(r)""");exec("""def deploy(nodeRef,sm):p="echo deploy "+sm;os.system(p);r=urllib2.Request("http://localhost:8080/alfresco/s/lecm/statemachine/editor/diagram?statemachineNodeRef="+json.loads(nodeRef.read())["packageNodeRef"]+"&type=deploy&comment="+strftime("%Y-%m-%d_%H-%M-%S", gmtime()));r.add_header(a[0],a[1]);urllib2.urlopen(r);return""");exec("""def run(f, *args):\n try: return f(*args);\n except (urllib2.HTTPError, urllib2.URLError) as e: sys.stdout.write(d+str(e)+d+cr);sys.stdout.flush();\n except (AttributeError) as e: sys.stdout.write(d+de+d+cr);sys.stdout.flush();""");[run(deploy, run(publish, ii), ii) for ii in sm];'\'''
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment