forked from NYANDEV/forgejo
f85e315cb7
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/1298
Co-authored-by: oliverpool <git@olivier.pfad.fr>
Co-committed-by: oliverpool <git@olivier.pfad.fr>
(cherry picked from commit 2aebc5ab4d58a90ed79e5487776d4f3eeea3b33f)
(cherry picked from commit 8d66b6e7bcc1f2eae06e1dee65b4b8736f217824)
(cherry picked from commit c782935f1b3d54a928f81a4dcd19bbca52c6f77c)
(cherry picked from commit 51e071da7304badd0f301771322bde7a86d33ef5)
(cherry picked from commit 81dbc87e1639510c1026541eb944267e9cbdb78b)
(cherry picked from commit 7a9820474341ae05e39e7de92cfe7501014dc91d)
(cherry picked from commit c679954950fb7641f3b281b3d33ae5dfb23aef8a)
(cherry picked from commit 8e4a03f302db5270967cb82ef0371429ba512f85)
(cherry picked from commit 686b770c1e5c44047d34a7ab76df5dcbce2ce60f)
(cherry picked from commit 1b1947747a52cca4b4b73b6631e66fab347ced11)
(cherry picked from commit 46619b4e9cce63e04470d99bbb4fce3f1d348370)
(cherry picked from commit 7d599fe3af775229f22915ffeb2a89984334fd1a)
(cherry picked from commit 358149d614a1e8b953c8ac8a2c323bd382316d29)
(cherry picked from commit 7b210fbf8c
)
79 lines
2.8 KiB
YAML
79 lines
2.8 KiB
YAML
# SPDX-License-Identifier: MIT
|
|
#
|
|
# See also https://forgejo.org/docs/next/developer/RELEASE/#release-process
|
|
#
|
|
# https://codeberg.org/forgejo-experimental/forgejo
|
|
#
|
|
# Copies a release from codeberg.org/forgejo-integration to codeberg.org/forgejo-experimental
|
|
#
|
|
# ROLE: forgejo-experimental
|
|
# FORGEJO: https://codeberg.org
|
|
# FROM_OWNER: forgejo-integration
|
|
# TO_OWNER: forgejo-experimental
|
|
# DOER: forgejo-experimental-ci
|
|
# TOKEN: <generated from codeberg.org/forgejo-experimental-ci>
|
|
#
|
|
# https://forgejo.octopuce.forgejo.org/forgejo/forgejo
|
|
#
|
|
# Copies & sign a release from codeberg.org/forgejo-integration to codeberg.org/forgejo
|
|
#
|
|
# ROLE: forgejo-release
|
|
# FORGEJO: https://codeberg.org
|
|
# FROM_OWNER: forgejo-integration
|
|
# TO_OWNER: forgejo
|
|
# DOER: release-team
|
|
# TOKEN: <generated from codeberg.org/release-team>
|
|
# GPG_PRIVATE_KEY: <XYZ>
|
|
# GPG_PASSPHRASE: <ABC>
|
|
#
|
|
name: Pubish release
|
|
|
|
on:
|
|
push:
|
|
tags: 'v*'
|
|
|
|
jobs:
|
|
publish:
|
|
runs-on: self-hosted
|
|
if: secrets.DOER != '' && secrets.FORGEJO != '' && secrets.TO_OWNER != '' && secrets.FROM_OWNER != '' && secrets.TOKEN != ''
|
|
steps:
|
|
- name: install the certificate authority
|
|
if: secrets.ROLE == 'forgejo-release'
|
|
run: |
|
|
apt-get install -qq -y wget
|
|
wget --no-check-certificate -O /usr/local/share/ca-certificates/enough.crt https://forgejo.octopuce.forgejo.org/forgejo/enough/raw/branch/main/certs/2023-05-13/ca.crt
|
|
update-ca-certificates --fresh
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: copy & sign binaries and container images from one owner to another
|
|
uses: ./.forgejo/actions/publish-release
|
|
with:
|
|
forgejo: ${{ secrets.FORGEJO }}
|
|
from-owner: ${{ secrets.FROM_OWNER }}
|
|
to-owner: ${{ secrets.TO_OWNER }}
|
|
ref-name: ${{ github.ref_name }}
|
|
doer: ${{ secrets.DOER }}
|
|
token: ${{ secrets.TOKEN }}
|
|
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
|
|
gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }}
|
|
verbose: ${{ secrets.VERBOSE }}
|
|
|
|
|
|
- name: set up go for the DNS update below
|
|
uses: https://code.forgejo.org/actions/setup-go@v4
|
|
if: secrets.ROLE == 'forgejo-experimental'
|
|
with:
|
|
go-version: ">=1.21"
|
|
check-latest: true
|
|
- name: update the _release.experimental DNS record
|
|
if: secrets.ROLE == 'forgejo-experimental'
|
|
uses: https://code.forgejo.org/actions/ovh-dns-update@v1
|
|
with:
|
|
subdomain: _release.experimental
|
|
domain: forgejo.com # there is a CNAME from .org to .com (for security reasons)
|
|
record-id: 5283602601
|
|
value: v=${{ github.ref_name }}
|
|
ovh-app-key: ${{ secrets.OVH_APP_KEY }}
|
|
ovh-app-secret: ${{ secrets.OVH_APP_SECRET }}
|
|
ovh-consumer-key: ${{ secrets.OVH_CON_KEY }}
|