Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
eduard93 committed Mar 29, 2018
2 parents a17f25c + da3e9aa commit 22b7d85
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Various GitLab hooks. For more information please read a series of articles on C
- [Part II: GitLab workflow](https://community.intersystems.com/post/continuous-delivery-your-intersystems-solution-using-gitlab-part-ii-gitlab-workflow)
- [Part III: GitLab installation and configuration](https://community.intersystems.com/post/continuous-delivery-your-intersystems-solution-using-gitlab-part-iii-gitlab-installation-and)
- [Part IV: CD configuration](https://community.intersystems.com/post/continuous-delivery-your-intersystems-solution-using-gitlab-part-iv-cd-configuration)
- [Part V: Why containers?](https://community.intersystems.com/post/continuous-delivery-your-intersystems-solution-using-gitlab-part-v-why-containers)

# Installation

Expand All @@ -24,8 +25,36 @@ Available settings:
| Setting | Sample Value | Description |
|---------|------------------------|-------------------------------------------------------------------------------------------------|
| ext | $lb("xml") | List of files extensions to load and compile. |
| tests | MyApp/Tests | Path relative from the repo root to the test suite. |
| tests | MyApp/Tests | Path relative from the repo root to the test suite. |
| commit | | Do not set. Current commit hash. |
| init | Package.Class:Method | Code called before loading files. |
| hooks | MyApp/Hooks/ | Path relative from the repo root to the hooks. |
| delete | Package.Class:Method | Code called to delete files from project. Should accept one argument - list of files to delete. |
| url | http://127.0.0.1:57772 | Server root. |


## Hooks

There are two types of hooks available:

- **Global** - executed each time the CI is run. Extend `isc.git.hook.Global`.
- **Local** - executed once. Extend `isc.git.hook.Local`.

Hooks of the same type are executed in collation order. To create a hook extend either or `isc.git.hook.Global` or `isc.git.hook.Local` and implement `onBefore` and/or `onAfter` methods.

### Execution order:

1. Global hooks, before.
2. Local hooks, before.
3. Code load and compile.
4. Local hooks, after.
5. Global hooks, after.

## Tips & Tricks

Various tricks for GitLab CI.

### Namespaces

Use `CI_COMMIT_REF_NAME` (resolves to branch) environment variable to use several namespaces on one server.

I.e. `csession ensemble -U ${CI_COMMIT_REF_NAME} "##class(isc.git.GitLab).loadDiff()"`

0 comments on commit 22b7d85

Please sign in to comment.