Merge pull request #888 from OneUptime/master #322
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Push Release Images to Docker Hub and GitHub Container Registry | |
on: | |
push: | |
branches: | |
- "release" | |
jobs: | |
generate-build-number: | |
runs-on: ubuntu-latest | |
outputs: | |
build_number: ${{ steps.buildnumber.outputs.build_number }} | |
steps: | |
- name: Generate build number | |
id: buildnumber | |
uses: onyxmueller/[email protected] | |
with: | |
token: ${{secrets.github_token}} | |
- run: echo "Build number is ${{ steps.buildnumber.outputs.build_number }}" | |
github-release: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
if: github.ref == 'refs/heads/release' | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- run: echo "${{needs.generate-build-number.outputs.build_number}}" | |
- name: "Build Changelog" | |
id: build_changelog | |
uses: mikepenz/[email protected] | |
- uses: ncipollo/release-action@v1 | |
with: | |
tag: "7.0.${{needs.generate-build-number.outputs.build_number}}" | |
artifactErrorsFailBuild: true | |
body: | | |
${{steps.build_changelog.outputs.changelog}} | |
helm-chart-deploy: | |
runs-on: ubuntu-latest | |
needs: generate-build-number | |
env: | |
CI_COMMIT_AUTHOR: Continuous Integration | |
steps: | |
- name: Install Helm | |
run: curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- name: Build and Package Helm chart | |
run: | | |
cd .. | |
echo '${{ secrets.GPG_PRIVATE_KEY }}' > private.key | |
gpg --import private.key || true | |
rm private.key | |
echo "GPG key imported successfully" | |
gpg --export-secret-keys >~/.gnupg/secring.gpg | |
echo "GPG key exported successfully" | |
eval `ssh-agent -s` | |
ssh-add - <<< '${{ secrets.HELM_CHART_GITHUB_REPO_DEPLOY_KEY }}' | |
git clone [email protected]:OneUptime/helm-chart.git | |
cd oneuptime/HelmChart/Public | |
helm lint oneuptime | |
helm package --sign --key '[email protected]' --keyring ~/.gnupg/secring.gpg oneuptime --version 7.0.${{needs.generate-build-number.outputs.build_number}} --app-version 7.0.${{needs.generate-build-number.outputs.build_number}} | |
echo "Helm Chart Package created successfully" | |
cd .. | |
ls | |
echo "Copying the package to helm-chart repo" | |
rm -r ../../helm-chart/oneuptime | |
cp -r ./Public/* ../../helm-chart | |
echo "Package copied successfully" | |
cd .. && cd .. && cd helm-chart | |
echo "Updating helm-chart repo" | |
git config --global user.name "${{ env.CI_COMMIT_AUTHOR }}" | |
git config --global user.email "[email protected]" | |
echo "Git config set successfully" | |
echo "Adding the package to helm-chart repo" | |
helm repo index . | |
git add -A | |
git commit -m "Helm Chart Release 7.0.${{needs.generate-build-number.outputs.build_number}}" | |
git push origin master | |
nginx-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/nginx | |
ghcr.io/oneuptime/nginx | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy nginx. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Nginx/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
test-server-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/test-server | |
ghcr.io/oneuptime/test-server | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy test-server. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./TestServer/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
otel-collector-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/otel-collector | |
ghcr.io/oneuptime/otel-collector | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy otel-collector. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./OTelCollector/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
workflow-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/workflow | |
ghcr.io/oneuptime/workflow | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy workflow. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Workflow/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
link-shortener-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/link-shortener | |
ghcr.io/oneuptime/link-shortener | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy link-shortener. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./LinkShortener/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
workers-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/workers | |
ghcr.io/oneuptime/workers | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy workers. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Workers/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
status-page-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/status-page | |
ghcr.io/oneuptime/status-page | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy status-page. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./StatusPage/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
test-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/test | |
ghcr.io/oneuptime/test | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy test. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Tests/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
realtime-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/realtime | |
ghcr.io/oneuptime/realtime | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy realtime. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Realtime/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
ingestor-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/ingestor | |
ghcr.io/oneuptime/ingestor | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy ingestor. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Ingestor/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
notification-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/notification | |
ghcr.io/oneuptime/notification | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy notification. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Notification/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
integrations-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/integrations | |
ghcr.io/oneuptime/integrations | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy integrations. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Integration/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
probe-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/probe | |
ghcr.io/oneuptime/probe | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy probe. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Probe/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
identity-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/identity | |
ghcr.io/oneuptime/identity | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy identity. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Identity/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
home-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/home | |
ghcr.io/oneuptime/home | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy home. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Home/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
haraka-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/haraka | |
ghcr.io/oneuptime/haraka | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy haraka. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Haraka/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
file-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/file | |
ghcr.io/oneuptime/file | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy file. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./File/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
admin-dashboard-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/admin-dashboard | |
ghcr.io/oneuptime/admin-dashboard | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy admin-dashboard. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./AdminDashboard/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
dashboard-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/dashboard | |
ghcr.io/oneuptime/dashboard | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy dashboard. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Dashboard/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
dashboard-api-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/dashboard-api | |
ghcr.io/oneuptime/dashboard-api | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy dashboard-api. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./DashboardAPI/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
api-reference-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/api-reference | |
ghcr.io/oneuptime/api-reference | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy api-reference. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./ApiReference/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} | |
accounts-docker-image-deploy: | |
needs: generate-build-number | |
runs-on: ubuntu-latest | |
steps: | |
- name: Docker Meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
oneuptime/accounts | |
ghcr.io/oneuptime/accounts | |
tags: | | |
type=raw,value=release,enable=true | |
type=semver,value=7.0.${{needs.generate-build-number.outputs.build_number}},pattern={{version}},enable=true | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.ref }} | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18.3.0 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Generate Dockerfile from Dockerfile.tpl | |
run: npm run prerun | |
# Build and deploy accounts. | |
- name: Login to Docker Hub | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/[email protected] | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Accounts/Dockerfile | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
GIT_SHA=${{ github.sha }} | |
APP_VERSION=7.0.${{needs.generate-build-number.outputs.build_number}} |