...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Warning | ||
---|---|---|
| ||
This page is now hosted on https://odp.finos.org/docs/development-infrastructure/continuous-integration/intro |
Continuous Integration (CI) allows developers to run different type of validation processes automatically at commit / merge time, in order to identify problems earlier. As a result, configuring CI is inherently language and eco-system specific.
...
Follow the Java Snapshot deployment configuration ; as a result, you should have username/password credentials (mentioned below as CI_DEPLOY_USERNAME and CI_DEPLOY_PASSWORD) to access issues.sonatype.org
- Raise a HELP issue or send an email to
help@finos.org
to request permission to deploy artifacts on Maven remote repositories; this action is not required if the developer has already been granted access previously Commit a
settings.xml
file in the project root folderCode Block language xml title settings.xml for snapshot deploy linenumbers true collapse true <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <servers> <server> <id>ossrh</id> <username>${env.CI_DEPLOY_USERNAME}</username> <password>${env.CI_DEPLOY_PASSWORD}</password> </server> </servers> </settings>
- Define CI_DEPLOY_USERNAME and CI_DEPLOY_PASSWORD variables with Travis CI; make sure that they're encrypted and hidden during the build process; the credentials to use are the ones defined on step 1; if you don't want to share your username/password credentials, you can request and use Nexus tokens
- Change the mvn build command to
- Invoke the deploy goal
- Append --settings settings.xml at the end of the build command
...
Travis CI can be configured to use python-semantic-release, a package that simplifies and automates versioning for python projects; a project committer can raise a HELP issue or send an email to help@finos.org
(following the template below) to request Foundation staff to apply the proper Travis CI project settings; packages will be published on behalf of the Foundation's pypi user:
...
In order to request a project to be integrated with MyGet, a project committer can sign up to MyGet and open a HELP issue or send an email to help@finos.org
, using the following the template:
Code Block | ||||
---|---|---|---|---|
| ||||
h4. Project coordinates <_GitHub project url and other useful info_> h4. MyGet username <_your MyGet username_> h4. CSProj and CS files <_Where project descriptors are located_> h4. Packages <_A list of the packages that are published; by default all packages are taken into account_> h4. Publishing strategy to NuGet <_ Whether to enable automatic publishing based on source code branching or rely on manual package pushing using the MyGet interface; if the latter, a MyGet personal account username must be provided _> |
...
Requesting CI integration
Any committer can open a HELP issue or send an email to help@finos.org
to request enabling CI on a hosted project. Please follow this template:
...