diff options
Diffstat (limited to '.openshift')
-rw-r--r-- | .openshift/README.md | 5 | ||||
-rw-r--r-- | .openshift/action_hooks/README.md | 3 | ||||
-rwxr-xr-x | .openshift/action_hooks/deploy | 162 | ||||
-rw-r--r-- | .openshift/cron/README.cron | 27 | ||||
-rw-r--r-- | .openshift/cron/daily/.gitignore | 0 | ||||
-rw-r--r-- | .openshift/cron/hourly/.gitignore | 0 | ||||
-rw-r--r-- | .openshift/cron/minutely/.gitignore | 0 | ||||
-rw-r--r-- | .openshift/cron/monthly/.gitignore | 0 | ||||
-rw-r--r-- | .openshift/cron/weekly/README | 16 | ||||
-rw-r--r-- | .openshift/cron/weekly/chrono.dat | 1 | ||||
-rwxr-xr-x | .openshift/cron/weekly/chronograph | 3 | ||||
-rw-r--r-- | .openshift/cron/weekly/jobs.allow | 12 | ||||
-rw-r--r-- | .openshift/cron/weekly/jobs.deny | 7 | ||||
-rw-r--r-- | .openshift/markers/README.md | 4 | ||||
-rw-r--r-- | .openshift/pear.txt | 0 |
15 files changed, 240 insertions, 0 deletions
diff --git a/.openshift/README.md b/.openshift/README.md new file mode 100644 index 000000000..68061ca57 --- /dev/null +++ b/.openshift/README.md @@ -0,0 +1,5 @@ +The OpenShift `php` cartridge documentation can be found at: +http://openshift.github.io/documentation/oo_cartridge_guide.html#php + +For information about .openshift directory, consult the documentation: +http://openshift.github.io/documentation/oo_user_guide.html#the-openshift-directory diff --git a/.openshift/action_hooks/README.md b/.openshift/action_hooks/README.md new file mode 100644 index 000000000..541319581 --- /dev/null +++ b/.openshift/action_hooks/README.md @@ -0,0 +1,3 @@ +For information about action hooks, consult the documentation: + +http://openshift.github.io/documentation/oo_user_guide.html#action-hooks diff --git a/.openshift/action_hooks/deploy b/.openshift/action_hooks/deploy new file mode 100755 index 000000000..688871d72 --- /dev/null +++ b/.openshift/action_hooks/deploy @@ -0,0 +1,162 @@ +#!/bin/bash +# This deploy hook gets executed after dependencies are resolved and the +# build hook has been run but before the application has been started back +# up again. This script gets executed directly, so it could be python, php, +# ruby, etc. + +# Bash help: http://www.panix.com/~elflord/unix/bash-tute.html + +# For information about action hooks supported by OpenShift, consult the documentation: +# http://openshift.github.io/documentation/oo_user_guide.html#the-openshift-directory + +#### + +# Hubzilla specific deploy script + +# Place this file in /.openshift/action_hooks/ (The .openshift folder will be in the root of your repo) +# The file name should be "deploy" such that you have: +# .openshift/action_hooks/deploy + +# Conventions: Vars in curley braces have the slash after implied so no need to add it. +# e.g. ${OPENSHIFT_REPO_DIR}php/foobar = /repo/php/foobar +# See all OpenShift vars here: +# https://www.openshift.com/developers/openshift-environment-variables + +# HME - NOTE - leftover from original openshift-drupal-deploy +# In config.php you can leverage the enviroment variables like this: +# // Define env vars. +# if (array_key_exists('OPENSHIFT_APP_NAME', $_SERVER)) { +# $src = $_SERVER; +# } else { +# $src = $_ENV; +# } +# +# $conf["file_private_path"] = $src['OPENSHIFT_DATA_DIR'] . "private"; +# $conf["file_temporary_path"] = $src['OPENSHIFT_DATA_DIR'] . "tmp"; + + +#### + +# Start Deploy + +echo "Starting Deploy..." + +# Let's create the Hubzilla files directory in the Openshift data folder ($OPENSHIFT_DATA_DIR). + +echo "Check for the files directory called store, if not created - create it" + +if [ ! -d ${OPENSHIFT_DATA_DIR}store ]; then +mkdir -p ${OPENSHIFT_DATA_DIR}"store/[data]/smarty3" +echo "Done creating files directory" + +else + +echo "The files directory called store already exists" + +fi + +#### + +# Set permissions on the files directory. + +echo "Now chmod 777 -R files" + +chmod -R 777 ${OPENSHIFT_DATA_DIR}store + +echo "chmod done, permissions set to 777" + +#### + +# Symlink our files folder to the repo. + +# Note the "php" directory below seems to be the best way to serve OpenShift files. +# This is good as that allows us for directories one level above such as tmp and private + +echo "Create sym links for writeable directories" + +ln -sf ${OPENSHIFT_DATA_DIR}store ${OPENSHIFT_REPO_DIR}store + +echo "Files sym links created" + +#### + +# Copy .htconfig.php from the repo, rename it and place it in the data directory. +# if it's there already, skip it. + +if [ ! -f ${OPENSHIFT_DATA_DIR}.htconfig.php ]; + +then + +cp ${OPENSHIFT_REPO_DIR}.htconfig.php ${OPENSHIFT_DATA_DIR}.htconfig.php + +echo ".htconfig.php copied." + +else + +echo "Looks like the .htconfig.php file is already there, we won't overwrite it." + +fi + +#### + +# symlink the .htconfig.php file. + +echo "Create sym link for .htconfig.php" + +ln -sf ${OPENSHIFT_DATA_DIR}.htconfig.php ${OPENSHIFT_REPO_DIR}.htconfig.php + +echo ".htconfig.php symlink created" + +#### +# Copy .htaccess from the repo, rename it and place it in the data directory. +# if it's there already, skip it. + +if [ ! -f ${OPENSHIFT_DATA_DIR}.htaccess ]; + +then + +cp ${OPENSHIFT_REPO_DIR}.htaccess ${OPENSHIFT_DATA_DIR}.htaccess + +echo ".htaccess copied." + +else + +echo "Looks like the .htaccess file is already there, we won't overwrite it." + +fi + +#### + +# symlink the .htaccess file. + +echo "Create sym link for .htaccess" + +ln -sf ${OPENSHIFT_DATA_DIR}.htaccess ${OPENSHIFT_REPO_DIR}.htaccess + +echo ".htaccess symlink created" + +#### + +echo "Check for the poller at .openshift/cron/minutely/poller , if not created - create it" + +if [ ! -f ${OPENSHIFT_REPO_DIR}.openshift/cron/minutely/poller ]; then +printf '%s\n' '#!/bin/bash' 'if [ ! -f $OPENSHIFT_DATA_DIR/last_run ]; then' ' touch $OPENSHIFT_DATA_DIR/last_run' 'fi' 'if [[ $(find $OPENSHIFT_DATA_DIR/last_run -mmin +4) ]]; then #run every 5 mins' ' rm -f $OPENSHIFT_DATA_DIR/last_run' ' touch $OPENSHIFT_DATA_DIR/last_run' ' # The command(s) that you want to run every 5 minutes' 'cd /var/lib/openshift/${OPENSHIFT_APP_UUID}/app-root/repo; /opt/rh/php54/root/usr/bin/php include/poller.php' 'fi' >${OPENSHIFT_REPO_DIR}.openshift/cron/minutely/poller +echo "Done creating file .openshift/cron/minutely/poller" + +else + +echo "The poller already exists" + +fi + +#### + +# Set permissions on the poller script to make it executable. + +echo "Now chmod 777 -R poller" + +chmod -R 777 ${OPENSHIFT_REPO}.openshift/cron/minutely/poller + +echo "chmod done, permissions set to 777 on poller script." + +#### diff --git a/.openshift/cron/README.cron b/.openshift/cron/README.cron new file mode 100644 index 000000000..ac77f7872 --- /dev/null +++ b/.openshift/cron/README.cron @@ -0,0 +1,27 @@ +Run scripts or jobs on a periodic basis +======================================= +Any scripts or jobs added to the minutely, hourly, daily, weekly or monthly +directories will be run on a scheduled basis (frequency is as indicated by the +name of the directory) using run-parts. + +run-parts ignores any files that are hidden or dotfiles (.*) or backup +files (*~ or *,) or named *.{rpmsave,rpmorig,rpmnew,swp,cfsaved} + +The presence of two specially named files jobs.deny and jobs.allow controls +how run-parts executes your scripts/jobs. + jobs.deny ===> Prevents specific scripts or jobs from being executed. + jobs.allow ===> Only execute the named scripts or jobs (all other/non-named + scripts that exist in this directory are ignored). + +The principles of jobs.deny and jobs.allow are the same as those of cron.deny +and cron.allow and are described in detail at: + http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Automating_System_Tasks.html#s2-autotasks-cron-access + +See: man crontab or above link for more details and see the the weekly/ + directory for an example. + +PLEASE NOTE: The Cron cartridge must be installed in order to run the configured jobs. + +For more information about cron, consult the documentation: +http://openshift.github.io/documentation/oo_cartridge_guide.html#cron +http://openshift.github.io/documentation/oo_user_guide.html#cron diff --git a/.openshift/cron/daily/.gitignore b/.openshift/cron/daily/.gitignore new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/.openshift/cron/daily/.gitignore diff --git a/.openshift/cron/hourly/.gitignore b/.openshift/cron/hourly/.gitignore new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/.openshift/cron/hourly/.gitignore diff --git a/.openshift/cron/minutely/.gitignore b/.openshift/cron/minutely/.gitignore new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/.openshift/cron/minutely/.gitignore diff --git a/.openshift/cron/monthly/.gitignore b/.openshift/cron/monthly/.gitignore new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/.openshift/cron/monthly/.gitignore diff --git a/.openshift/cron/weekly/README b/.openshift/cron/weekly/README new file mode 100644 index 000000000..7c3e659fe --- /dev/null +++ b/.openshift/cron/weekly/README @@ -0,0 +1,16 @@ +Run scripts or jobs on a weekly basis +===================================== +Any scripts or jobs added to this directory will be run on a scheduled basis +(weekly) using run-parts. + +run-parts ignores any files that are hidden or dotfiles (.*) or backup +files (*~ or *,) or named *.{rpmsave,rpmorig,rpmnew,swp,cfsaved} and handles +the files named jobs.deny and jobs.allow specially. + +In this specific example, the chronograph script is the only script or job file +executed on a weekly basis (due to white-listing it in jobs.allow). And the +README and chrono.dat file are ignored either as a result of being black-listed +in jobs.deny or because they are NOT white-listed in the jobs.allow file. + +For more details, please see ../README.cron file. + diff --git a/.openshift/cron/weekly/chrono.dat b/.openshift/cron/weekly/chrono.dat new file mode 100644 index 000000000..fc4abb87c --- /dev/null +++ b/.openshift/cron/weekly/chrono.dat @@ -0,0 +1 @@ +Time And Relative D...n In Execution (Open)Shift! diff --git a/.openshift/cron/weekly/chronograph b/.openshift/cron/weekly/chronograph new file mode 100755 index 000000000..61de949f4 --- /dev/null +++ b/.openshift/cron/weekly/chronograph @@ -0,0 +1,3 @@ +#!/bin/bash + +echo "`date`: `cat $(dirname \"$0\")/chrono.dat`" diff --git a/.openshift/cron/weekly/jobs.allow b/.openshift/cron/weekly/jobs.allow new file mode 100644 index 000000000..8d32abc70 --- /dev/null +++ b/.openshift/cron/weekly/jobs.allow @@ -0,0 +1,12 @@ +# +# Script or job files listed in here (one entry per line) will be +# executed on a weekly-basis. +# +# Example: The chronograph script will be executed weekly but the README +# and chrono.dat files in this directory will be ignored. +# +# The README file is actually ignored due to the entry in the +# jobs.deny which is checked before jobs.allow (this file). +# +chronograph + diff --git a/.openshift/cron/weekly/jobs.deny b/.openshift/cron/weekly/jobs.deny new file mode 100644 index 000000000..73c945008 --- /dev/null +++ b/.openshift/cron/weekly/jobs.deny @@ -0,0 +1,7 @@ +# +# Any script or job files listed in here (one entry per line) will NOT be +# executed (read as ignored by run-parts). +# + +README + diff --git a/.openshift/markers/README.md b/.openshift/markers/README.md new file mode 100644 index 000000000..8daca526c --- /dev/null +++ b/.openshift/markers/README.md @@ -0,0 +1,4 @@ +For information about markers, consult the documentation: + +http://openshift.github.io/documentation/oo_user_guide.html#markers +http://openshift.github.io/documentation/oo_cartridge_guide.html#php-markers diff --git a/.openshift/pear.txt b/.openshift/pear.txt new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/.openshift/pear.txt |