Release Process Plugins » History » Version 3
Lukas Zapletal, 11/06/2015 04:52 AM
Added Foreman Discovery Image
1 | 1 | Lukas Zapletal | h1. Release Process for Plugins |
---|---|---|---|
2 | |||
3 | h2. Foreman Discovery |
||
4 | |||
5 | h3. Before the release |
||
6 | |||
7 | 2 | Lukas Zapletal | * Extract strings (http://projects.theforeman.org/projects/foreman/wiki/How_to_Create_a_Plugin#Extracting-strings) (Does not currently work due to https://github.com/theforeman/foreman/pull/2096, workaround solution is to call @make -C locale/ extract update-po@ for a manual extraction as Discovery does not use JavaScript) |
8 | 1 | Lukas Zapletal | * Notify translators about incoming release |
9 | * No more i18n-related big changes (new/changed strings) |
||
10 | |||
11 | h3. Release process |
||
12 | |||
13 | * Pull new translations with @make -C locale tx-update@ |
||
14 | * Test the develop branch against stable Foreman RC release |
||
15 | * Bump version in @lib/foreman_discovery/version.rb@ |
||
16 | * Modify @requires_foreman@ in @engine.rb@ |
||
17 | * Git tag and fork @X.Y-stable@ branch |
||
18 | * Build a release with @gem build@ |
||
19 | * Investigate contents with @tar -xOf foreman_discovery-x.x.x.gem data.tar.gz | tar -z -list | sort@ |
||
20 | * Push to origin including the tag |
||
21 | * Push the release with @gem push@ |
||
22 | * Create Jenkins configuration in https://github.com/theforeman/foreman-infra/blob/master/puppet/modules/jenkins_job_builder/files/theforeman.org/yaml/jobs/plugins/foreman_discovery.yaml |
||
23 | * Create packaging requests: https://github.com/theforeman/foreman-packaging/pull/744 and https://github.com/theforeman/foreman-packaging/pull/743 as examples |
||
24 | * Do documentation update: https://github.com/theforeman/theforeman.org/pull/409 (example) |
||
25 | 3 | Lukas Zapletal | |
26 | h2. Foreman Discovery Image |
||
27 | |||
28 | h3. Before the release |
||
29 | |||
30 | * Announce the nightly build as a release candidate: http://downloads.theforeman.org/discovery/nightly/ (this is being rebuilt on each pusth into master) |
||
31 | |||
32 | h3. Release process |
||
33 | |||
34 | * Tag the commit in master |
||
35 | * Trigger build via http://ci.theforeman.org/view/Packaging/job/packaging_discovery_image/build?delay=0sec |
||
36 | ** Proxy repo: http://yum.theforeman.org/releases/X.Y/el7/x86_64/ |
||
37 | ** Output dir: releases/X.Y |
||
38 | * Sign the released files with: |
||
39 | |||
40 | <pre> |
||
41 | for F in /var/www/vhosts/downloads/htdocs/discovery/releases/X.Y/*; do gpg --armor --detach-sig --default-key 5A9BF257 --output - $F | sudo tee $F.asc; done |
||
42 | </pre> |