Skip to content

MCLOUD custom app release #33

MCLOUD custom app release

MCLOUD custom app release #33

###
# SPDX-License-Identifier: AGPL-3.0
#
# Author: Bernd rederlechner <[email protected]>
#
# Builds a stable release package based on a release assembly
# customisation-<version>-<increment>
#
# As soon as a package is deployed to production, the tag and the branch
# MUST STAY FOR 2 years and not deleted.
#
# Release packages, tags and customisation branches not delivered to production should
# be deleted asap a newer release is available.
#
name: MCLOUD custom app release
on:
workflow_dispatch:
inputs:
increment:
description: 'Release increment'
required: true
type: number
branch:
type: choice
description: Branch to build a package from
options:
- main
- stable25
- stable26
- stable27
default: main
jobs:
check-custom:
uses: nextmcloud/.github/.github/workflows/nmc-app-precond.yml@master
with:
versionbranch: ${{ inputs.branch }}
increment: ${{ inputs.increment }}
secrets: inherit
assemble-custom:
uses: nextmcloud/.github/.github/workflows/nmc-custom-assembly.yml@master
needs: check-custom
with:
trunk: 'main'
stable: ${{ inputs.branch }}
result: ${{ format('customisation-{0}-{1}', inputs.branch, inputs.increment ) }}
secrets: inherit
composerdep:
strategy:
fail-fast: false
uses: ./.github/workflows/nmc-custom-oidc-composer.yml
needs: assemble-custom
with:
assembly: ${{ format('customisation-{0}-{1}', inputs.branch, inputs.increment) }}
secrets: inherit
build-custom:
uses: nextmcloud/.github/.github/workflows/nmc-custom-app-build.yml@master
needs: [ check-custom, composerdep ]
with:
appname: ${{ needs.check-custom.outputs.appname }}
assembly: ${{ format('customisation-{0}-{1}', inputs.branch , inputs.increment ) }}
tag: ${{ needs.check-custom.outputs.tag }}
prerelease: ${{ inputs.branch == 'main' && true || false }}
secrets: inherit