Skip to content

Commit

Permalink
Initial Pipelines
Browse files Browse the repository at this point in the history
This change includes all the existing contributions from the pipeline builder
for this repository.

Signed-off-by: Ben Hale <[email protected]>
  • Loading branch information
nebhale committed Oct 3, 2020
1 parent 25c9a1e commit b96f04b
Show file tree
Hide file tree
Showing 9 changed files with 561 additions and 0 deletions.
16 changes: 16 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily
labels:
- semver:patch
- type:dependency-upgrade
- package-ecosystem: gomod
directory: /
schedule:
interval: daily
labels:
- semver:patch
- type:dependency-upgrade
27 changes: 27 additions & 0 deletions .github/labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
- name: semver:major
description: A change requiring a major version bump
color: f9d0c4
- name: semver:minor
description: A change requiring a minor version bump
color: f9d0c4
- name: semver:patch
description: A change requiring a patch version bump
color: f9d0c4
- name: type:bug
description: A general bug
color: e3d9fc
- name: type:dependency-upgrade
description: A dependency upgrade
color: e3d9fc
- name: type:documentation
description: A documentation update
color: e3d9fc
- name: type:enhancement
description: A general enhancement
color: e3d9fc
- name: type:question
description: A user question
color: e3d9fc
- name: type:task
description: A general task
color: e3d9fc
32 changes: 32 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
template: $CHANGES
name-template: $RESOLVED_VERSION
tag-template: v$RESOLVED_VERSION
categories:
- title: ⭐️ Enhancements
labels:
- type:enhancement
- title: "\U0001F41E Bug Fixes"
labels:
- type:bug
- title: "\U0001F4D4 Documentation"
labels:
- type:documentation
- title: ⛏ Dependency Upgrades
labels:
- type:dependency-upgrade
- title: "\U0001F6A7 Tasks"
labels:
- type:task
exclude-labels:
- type:question
version-resolver:
major:
labels:
- semver:major
minor:
labels:
- semver:minor
patch:
labels:
- semver:patch
default: patch
137 changes: 137 additions & 0 deletions .github/workflows/create-package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
name: Create Package
"on":
release:
types:
- published
jobs:
create-package:
name: Create Package
runs-on:
- ubuntu-latest
steps:
- uses: actions/checkout@v2
- id: version
name: Compute Version
run: |
#!/usr/bin/env bash
set -euo pipefail
PATTERN="refs/tags/v([0-9]+\.[0-9]+\.[0-9]+)"
if [[ ${GITHUB_REF} =~ ${PATTERN} ]]; then
VERSION=${BASH_REMATCH[1]}
else
VERSION=$(git rev-parse --short HEAD)
fi
echo "::set-output name=version::${VERSION}"
printf "Selected %s from
* ref: %s
* sha: %s
" "${VERSION}" "${GITHUB_REF}" "${GITHUB_SHA}"
- uses: actions/setup-go@v2
with:
go-version: "1.15"
- name: Install Create Package
run: |
#!/usr/bin/env bash
set -euo pipefail
GO111MODULE=on go get -u -ldflags="-s -w" github.com/paketo-buildpacks/libpak/cmd/create-package
- name: Create Package
run: |
#!/usr/bin/env bash
set -euo pipefail
if [[ -n "${INCLUDE_DEPENDENCIES+x}" ]]; then
create-package \
--cache-location "${HOME}"/carton-cache \
--destination "${HOME}"/buildpack \
--include-dependencies \
--version "${VERSION}"
else
create-package \
--destination "${HOME}"/buildpack \
--version "${VERSION}"
fi
[[ -e package.toml ]] && cp package.toml "${HOME}"/package.toml
printf '[buildpack]\nuri = "%s"' "${HOME}"/buildpack >> "${HOME}"/package.toml
env:
VERSION: ${{ steps.version.outputs.version }}
- name: Install Crane
run: |
#!/usr/bin/env bash
set -euo pipefail
GO111MODULE=on go get -u -ldflags="-s -w" github.com/google/go-containerregistry/cmd/crane
- name: Install pack
run: |
#!/usr/bin/env bash
set -euo pipefail
mkdir -p "${HOME}"/bin
echo "::add-path::${HOME}/bin"
curl \
--location \
--show-error \
--silent \
"https://github.com/buildpacks/pack/releases/download/v${PACK_VERSION}/pack-v${PACK_VERSION}-linux.tgz" \
| tar -C "${HOME}"/bin/ -xzv pack
env:
PACK_VERSION: 0.13.1
- uses: GoogleCloudPlatform/github-actions/setup-gcloud@master
with:
service_account_key: ${{ secrets.JAVA_GCLOUD_SERVICE_ACCOUNT_KEY }}
- name: Configure gcloud docker credentials
run: gcloud auth configure-docker
- id: package
name: Package Buildpack
run: |
#!/usr/bin/env bash
set -euo pipefail
if [[ -n "${PUBLISH+x}" ]]; then
pack package-buildpack \
"${PACKAGE}:${VERSION}" \
--config "${HOME}"/package.toml \
--publish
echo "::set-output name=digest::$(crane digest "${PACKAGE}:${VERSION}")"
else
pack package-buildpack \
"${PACKAGE}:${VERSION}" \
--config "${HOME}"/package.toml
fi
env:
PACKAGE: gcr.io/paketo-buildpacks/sbt
PUBLISH: "true"
VERSION: ${{ steps.version.outputs.version }}
- name: Update release with digest
run: |
#!/usr/bin/env bash
set -euo pipefail
PAYLOAD=$(cat "${GITHUB_EVENT_PATH}")
RELEASE_ID=$(jq -n -r --argjson PAYLOAD "${PAYLOAD}" '$PAYLOAD.release.id')
RELEASE_TAG_NAME=$(jq -n -r --argjson PAYLOAD "${PAYLOAD}" '$PAYLOAD.release.tag_name')
RELEASE_NAME=$(jq -n -r --argjson PAYLOAD "${PAYLOAD}" '$PAYLOAD.release.name')
RELEASE_BODY=$(jq -n -r --argjson PAYLOAD "${PAYLOAD}" '$PAYLOAD.release.body')
gh api \
--method PATCH \
"/repos/:owner/:repo/releases/${RELEASE_ID}" \
--field "tag_name=${RELEASE_TAG_NAME}" \
--field "name=${RELEASE_NAME}" \
--field "body=${RELEASE_BODY//<!-- DIGEST PLACEHOLDER -->/\`${DIGEST}\`}"
env:
DIGEST: ${{ steps.package.outputs.digest }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
30 changes: 30 additions & 0 deletions .github/workflows/minimal-labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Minimal Labels
"on":
pull_request:
types:
- opened
- synchronize
- reopened
- labeled
- unlabeled
jobs:
semver:
name: Minimal Semver Labels
runs-on:
- ubuntu-latest
steps:
- uses: mheap/github-action-required-labels@v1
with:
count: 1
labels: semver:major, semver:minor, semver:patch
mode: exactly
type:
name: Minimal Type Labels
runs-on:
- ubuntu-latest
steps:
- uses: mheap/github-action-required-labels@v1
with:
count: 1
labels: type:bug, type:dependency-upgrade, type:documentation, type:enhancement, type:question, type:task
mode: exactly
17 changes: 17 additions & 0 deletions .github/workflows/synchronize-labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Synchronize Labels
"on":
push:
branches:
- main
paths:
- .github/labels.yml
jobs:
synchronize:
name: Synchronize Labels
runs-on:
- ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: micnncim/action-label-syncer@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Loading

0 comments on commit b96f04b

Please sign in to comment.