Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MISC] Jenkins Deployment Jobs for Framework App Websites #865

Closed
4 tasks
mbabker opened this issue Feb 25, 2017 · 1 comment
Closed
4 tasks

[MISC] Jenkins Deployment Jobs for Framework App Websites #865

mbabker opened this issue Feb 25, 2017 · 1 comment

Comments

@mbabker
Copy link
Contributor

mbabker commented Feb 25, 2017

Create build jobs on Jenkins for each of our Framework app websites to enable a "proper" deployment system versus using git live on the server or some other adhoc deployment mechanism:

  • developer.joomla.org/stats (Stats Server)
  • framework.joomla.org
  • help.joomla.org
  • issues.joomla.org

Deployment workflow is pretty similar to this (this is generally how many deployment systems work and a workflow I'm using now for several projects):

  • Pull the repo's deployment branch (generally master)
  • Copy the resources to a staging area
  • Run composer install --no-dev -o
  • "Clean" non-production resources (i.e. test directories in the vendor folder, CI resources, assets used for compiling the template, local configuration if one is required, etc.)
  • Add any extra non-version controlled files to the staging area (i.e. the Framework site has a file tracking the deployed commit SHA to use as a query string for assets)
  • Package the staging area and transfer it to the remote server
  • Extract the package to the remote server's deployments area (basically create a deployments folder in the cPanel account and each deployment is in a subfolder of that using a timestamp)
  • Set up any symlinks for any project internals that should be persistent between deployments (i.e. a configuration file, or if it's chosen to use a persistent log directory versus one per deployment)
  • Symlink the public_html directory to the new deployment's web directory (generally www in our repos)
  • (Optional) Clear some disk space and remove old deployments
@mbabker
Copy link
Contributor Author

mbabker commented Apr 9, 2018

As said elsewhere, Jenkins is dead.

@mbabker mbabker closed this as completed Apr 9, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant