You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.9 KiB
67 lines
1.9 KiB
name: Build nightly container image
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '0 2 * * *' # run at 2 AM UTC
|
|
|
|
permissions:
|
|
contents: read
|
|
packages: write
|
|
|
|
jobs:
|
|
compute-suffix:
|
|
runs-on: ubuntu-latest
|
|
if: github.repository == 'mastodon/mastodon'
|
|
steps:
|
|
- id: version_vars
|
|
env:
|
|
TZ: Etc/UTC
|
|
run: |
|
|
echo mastodon_version_prerelease=nightly.$(date +'%Y-%m-%d')>> $GITHUB_OUTPUT
|
|
outputs:
|
|
prerelease: ${{ steps.version_vars.outputs.mastodon_version_prerelease }}
|
|
|
|
build-image:
|
|
needs: compute-suffix
|
|
uses: ./.github/workflows/build-container-image.yml
|
|
with:
|
|
file_to_build: Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
use_native_arm64_builder: true
|
|
cache: false
|
|
push_to_images: |
|
|
tootsuite/mastodon
|
|
ghcr.io/mastodon/mastodon
|
|
version_prerelease: ${{ needs.compute-suffix.outputs.prerelease }}
|
|
labels: |
|
|
org.opencontainers.image.description=Nightly build image used for testing purposes
|
|
flavor: |
|
|
latest=auto
|
|
tags: |
|
|
type=raw,value=edge
|
|
type=raw,value=nightly
|
|
type=schedule,pattern=${{ needs.compute-suffix.outputs.prerelease }}
|
|
secrets: inherit
|
|
|
|
build-image-streaming:
|
|
needs: compute-suffix
|
|
uses: ./.github/workflows/build-container-image.yml
|
|
with:
|
|
file_to_build: streaming/Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
use_native_arm64_builder: true
|
|
cache: false
|
|
push_to_images: |
|
|
tootsuite/mastodon-streaming
|
|
ghcr.io/mastodon/mastodon-streaming
|
|
version_prerelease: ${{ needs.compute-suffix.outputs.prerelease }}
|
|
labels: |
|
|
org.opencontainers.image.description=Nightly build image used for testing purposes
|
|
flavor: |
|
|
latest=auto
|
|
tags: |
|
|
type=raw,value=edge
|
|
type=raw,value=nightly
|
|
type=schedule,pattern=${{ needs.compute-suffix.outputs.prerelease }}
|
|
secrets: inherit
|