https://github.com/orange-cloudfoundry/ci-buildpack-cached
Pipeline which creates cached buildpack for cloud foundry when a new version of buildpack has been released and deploys it to storage system
https://github.com/orange-cloudfoundry/ci-buildpack-cached
buildpack cloudfoundry concourse
Last synced: 6 months ago
JSON representation
Pipeline which creates cached buildpack for cloud foundry when a new version of buildpack has been released and deploys it to storage system
- Host: GitHub
- URL: https://github.com/orange-cloudfoundry/ci-buildpack-cached
- Owner: orange-cloudfoundry
- Created: 2018-02-13T22:16:43.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-09-11T09:24:54.000Z (almost 2 years ago)
- Last Synced: 2024-09-11T12:43:06.309Z (almost 2 years ago)
- Topics: buildpack, cloudfoundry, concourse
- Language: Shell
- Homepage:
- Size: 43 KB
- Stars: 0
- Watchers: 5
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ci-buildpack-cached
Pipeline which create cached buildpack for cloud foundry when a new version of buildpack has been released and deploy it to storage system (default to s3).
## Use it on your concourse
**The default pipeline use an s3 on aws as the storage system, see [customize](#customize) section to use different system**
1. clone this repo
2. Create a `creds.yml` with this content
```yml
s3_bucket: my_s3_bucket
s3_access_key_id: my-s3-access-key-id
s3_secret_access_key: my-s3-access-key
github-access-token: my-github-token # this is needed only for java buildpack which has different build system
```
3. Log to concourse (e.g.: `fly -t target login -c https://my.concourse.ci/`)
4. Send the pipeline: `fly -t target set-pipeline -c pipeline.yml -p cached-buildpacks-creation -l creds.yml`
5. Unpause it: `fly -t target up -p cached-buildpacks-creation`
## Customize
There is some operators files which has been provided for this pipeline.
To use them, you will need the [bosh cli v2](https://bosh.io/docs/cli-v2.html) for its command `interpolate`.
### Add slack notification
Add notification about failure and success when a deploy has been triggered.
**Command**: `bosh interpolate pipeline.yml -o operators/slack-notify.yml`
**Credentials**:
- `slack-hook-url`: The webhook URL as provided by Slack or Mattermost.
### Use a custom s3
Use a different s3 endpoint to send your cached buildpack (default on AWS S3).
**Command**: `bosh interpolate pipeline.yml -o operators/custom-s3.yml`
**Credentials**:
- `s3_endpoint`: New s3 endpoint.
### Use artifactory as the storage system
Use artifactory instead of s3 to store your cached buildpack.
**Command**: `bosh interpolate pipeline.yml -o operators/artifactory.yml`
**Credentials**:
- `artifactory-url`: Url to Artifactory.
- `artifactory-username`: Artifactory username to push your buildpack.
- `artifactory-password`: Artifactory password to push your buildpack.
### Add trigger all jobs
Add a job to trigger all other jobs
**Command**: `bosh interpolate pipeline.yml -o operators/add-trigger-all-jobs.yml`
### Detect buildpacks previous versions
By default, concourse only detects latest versions of buildpacks, use this operator to detect previous version.
**Command**: `bosh interpolate pipeline.yml -o operators/detect-previous-versions.yml`
**Credentials**:
- `concourse-url`: Url to Concourse.
- `concourse-username`: Concourse username to allow job triggering.
- `concourse-password`: Concourse password to allow job triggering.
- `concourse-insecure`: Skip SSL certificate checks
- `go-buildpack-version`: Check buildpack from this version
- `java-buildpack-version`: Check buildpack from this version
- `dotnet-core-buildpack-version`: Check buildpack from this version
- `binary-buildpack-version`: Check buildpack from this version
- `nodejs-buildpack-version`: Check buildpack from this version
- `php-buildpack-version`: Check buildpack from this version
- `python-buildpack-version`: Check buildpack from this version
- `ruby-buildpack-version`: Check buildpack from this version
- `staticfile-buildpack-version`: Check buildpack from this version