Skip to content
Snippets Groups Projects
Commit b8a5f784 authored by Thomas Reis's avatar Thomas Reis
Browse files

Update README.

parent bb8aee1e
No related branches found
No related tags found
No related merge requests found
* ECAL Automation repository
** How to use the repository
*** General recommendations:
- The =master= branch serves as template for the online workflows
- The =master= branch contains all workflows and serves base for the =automation:dev= image
- Groovy utilities are collected in the shared library branch =ectrl-shared-lib=
- Branch names should start with =online= if they describe an online workflow, following
words should be separated by a dash (=-=). The name is independent of the name
given to both the workflow recorded in the influxdb and the job name in Jenkins.
Nonetheless keeping some consistency between the three is good practice.
*** New workflow
- Developer with push rights creates a new branch from the template =master= without importing the history
#+BEGIN_EXAMPLE
git clone ssh://git@gitlab.cern.ch:7999/cms-ecal-dpg/ECALELFS/automation.git
cd automation
git checkout --orphan my_new_workflow
#+END_EXAMPLE
- Developer with push rights creates a new directory under =workflows= to contain all workflow related code and documentation
- user forks the project on [[https://gitlab.cern.ch/cms-ecal-dpg/ECALELFS/automation][GitLab]].
- user clones and checks out the new branch
- user clones the repository
#+BEGIN_EXAMPLE
git clone ssh://git@gitlab.cern.ch:7999/USERNAME/automation.git
git checkout -b origin/my_new_workflow
#+END_EXAMPLE
- Starting from the master Jenkinsfile, modify the =stages= section to process your workflow (you can use as inspiration the other branches).
- Starting from the master Jenkinsfile, modify the =stages= section to process your workflow (you can use the other branches as inspiration).
- Push the new branch to your GitLab repository.
- Open a merge request on GitLab.
......@@ -51,14 +41,14 @@
When developing a new production version should be pushed using the following commands:
#+BEGIN_EXAMPLE
git tag -f online-myprocess-prod
git push -f --tags online-myprocess
git tag -f master-prod
git push -f --tags master-myprocess
#+END_EXAMPLE
Note that both the tag creation and push to the repository are forced (=-f=).
** Docker images
Docker images for each branch are built by the GitLab CI from the =docker-images= branch.
Docker images are built by the GitLab CI from the =master= branch and the =master-prod= tag.
A description of the content and structure of the image can be found in the [[https://gitlab.cern.ch/cms-ecal-dpg/ECALELFS/automation/-/tree/docker-images][branch README]].
** Tools
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment