Task #99
Configure Jenkins instance for building branch-based instances from a makefile
| Status: | New | Start date: | 12/12/2011 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | - | % Done: | 0% |
|
| Category: | - | |||
| Target version: | devops phase 1 |
Description
title pretty much says it all. we need the jenkins instance to listen to a git repo and spin up dev instances from that repo when changes occur. instances should be named by the branch the changes were pushed to.
History
Updated by Sam Boyer over 1 year ago
- Target version set to devops phase 1
Updated by Patrick Connolly over 1 year ago
- File package_from_git.erb added
- File drupal.json added
Posted a demo install profile and deploy repo that I'm working on with pennyworth:
https://github.com/patcon/demo-deploy
MY custom pennyworth repo isn't pushed yet, as I need to convert it to using the librarian gem for a cleaner layout (which the original project itself doesn't use), but basically just installed, drush5, mysql, php, and this drush make patch: http://drupal.org/node/1109002
(When I get it sorted out, I think i'm going to rework mark sonnabaums drush cookbook to allow it to pull in patches, as that just seems helpful:
https://github.com/msonnabaum/chef-drush
The attached files were the only files I editted/added to pennyworth
Updated by Patrick Connolly over 1 year ago
OK, got a pennyworth-drupal setup posted (on "drupal" branch):
https://github.com/myplanetdigital/pennyworth-drupal
Here's what it aims to do right now:
1. poll patcon/demo install profile for changes
2. pull in patcon/demo-deploy (which has all the scripts and submodule for the install profile)
3. drush_make site from install profile
4. drush site-install
5. drush archive-dump to package the site up into a tarball (to stay in sync with that format)
6. untars into dir
7. packages dir into simple deb (no post-install script yet to handle db import)
8. add package to reprepro apt repository to storage
It currently builds an install-profile according to patcon/demo-deploy repo and builds the DEFAULT install profile (the demo one was throwing a site-install error and I didn't feel like troubleshooting that at the moment).
https://github.com/patcon/demo-deploy
https://github.com/patcon/demo
If you'd like to test, just clone pennyworth-drupal, and run these commands:
git submodule init
git submodule update
librarian-chef install
vagrant up
The first build job should start automatically, and you can check it out jenkins at localhost:8080
apt repo is at localhost:8000
Would still like to get it using freight, as I've heard it's much better and less confusing than reprepro, and I'm working on that cookbook now
https://github.com/patcon/freight-cooking
Updated by Patrick Connolly over 1 year ago
Ah, and need to get jenkins using the build pipeline plugin for deploys. Will need to actually move to rackspace soon :)
Updated by Patrick Connolly over 1 year ago
Just commited changes to get demo install profile working:
https://github.com/patcon/demo/commit/d6514b6528ad46f2daf99c1dc5b5d27e6bff6d71
Updated by Patrick Connolly over 1 year ago
Pennyworth-drupal now has a really ugly readme (f*ck everything about emacs org-mode format)