...
Info | ||
---|---|---|
| ||
This page is not yet complete, please ask on the dev@sling.apache.org mailing list if anything is unclear or out of date |
Info | ||
---|---|---|
| ||
Note that builds are moving to https://ci-builds.apache.org , see https://issues.apache.org/jira/browse/SLING-9594 |
History and current status
...
The following Jenkins entry points are available:
- Sling Modules - GitHub organisation folder (provided by https://github.com/jenkinsci/github-branch-source-plugin, documentation at https://docs.cloudbees.com/docs/cloudbees-ci/latest/cloud-admin-guide/github-branch-source-plugin) that holds all Sling jobs
- Sling-Monitor - View that displays all master branch builds that have not completed successfully
- Open PRs - a listing of all pull request open against Sling repositories
To see the details on how the Sling job generation is configured, click Configure after visiting the Sling GitHub organisation folder .
New repositories should appear after at most 1 day, after they have been discovered by the GitHub organization folder. If needed, the Scan Organization Now button can be used to force a scan for new projects.
New jobs are created with the following metadata
Jenkins Metadata | Source | Hint |
---|---|---|
Job Name | GitHub/Gitbox repository name | The repository name is set once during creation, but cannot be easily renamed afterwards |
Job Description | GitHub Repository description | This field is read-only in the GitHub settings for ASF repos, instead one needs to leverage the .asf.yaml to set it |
Managing jobs
Since all the job management is now done via scripted pipelines script manual job creation is discouraged. Altering an existing job is not possible since the jobs are automatically created and updated.
...
The reusable logic is contained in classes under sling-tooling-jenkins/src and configured on the GitHub organization folder level. By default the Maven build being triggered by Jenkins is activating a profile with id ci
. This allows triggering specific steps inside your pom.xml only for CI builds (SLING-9749).
This allows modules that do not follow the standard job pattern to reuse the main logic ( error handling, Sling module descriptor parsing, notifications ), while having their own separate stage definitions. The only module which does this currently is the Sling IDE Tooling ( see the Sling IDE Tooling Jenkinsfile ). It is recommended to first try and apply the default slingOsgiBundleBuild
build before using non-standard Jenkinsfiles.
...