From 7cf5c2ee0ffcaadbe9a6fdc8f1e28a42c218f333 Mon Sep 17 00:00:00 2001 From: Marek Krug Date: Sat, 1 Mar 2025 20:06:36 +0100 Subject: [PATCH] added .forgejo --- .forgejo/CODEOWNERS | 1 + .forgejo/dependabot.yml | 28 +++++++++++++ .forgejo/workflows/release.yml | 73 ++++++++++++++++++++++++++++++++++ 3 files changed, 102 insertions(+) create mode 100644 .forgejo/CODEOWNERS create mode 100644 .forgejo/dependabot.yml create mode 100644 .forgejo/workflows/release.yml diff --git a/.forgejo/CODEOWNERS b/.forgejo/CODEOWNERS new file mode 100644 index 0000000..431cfd9 --- /dev/null +++ b/.forgejo/CODEOWNERS @@ -0,0 +1 @@ +* @cccb/web diff --git a/.forgejo/dependabot.yml b/.forgejo/dependabot.yml new file mode 100644 index 0000000..174728a --- /dev/null +++ b/.forgejo/dependabot.yml @@ -0,0 +1,28 @@ +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + target-branch: "staging" + schedule: + interval: "weekly" + commit-message: + prefix: "gh-action" + labels: + - "gh-action" + - "dependencies" + reviewers: + - "cccb/web" + - package-ecosystem: "pip" + directory: "/" + target-branch: "dev" + schedule: + interval: "weekly" + commit-message: + prefix: "python" + labels: + - "python" + - "dependencies" + reviewers: + - "cccb/web" diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml new file mode 100644 index 0000000..40bd95b --- /dev/null +++ b/.forgejo/workflows/release.yml @@ -0,0 +1,73 @@ +name: Release website + +on: + schedule: + - cron: "0 4 * * *" + push: + branches: + - staging + - production + pull_request: + workflow_dispatch: + +jobs: + build-and-deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 0 + + - name: Setup Hugo + uses: peaceiris/actions-hugo@v3 + with: + hugo-version: 'latest' + + - name: Build pages + run: hugo $(cat .hugo-params) + + - name: Add de_DE.UTF-8 locale + run: | + sudo apt-get update + sudo apt-get -y install locales + sudo locale-gen de_DE.UTF-8 + + - name: Setup Python + uses: actions/setup-python@v5 + with: + cache: 'pip' + + - name: Install dependencies + run: | + pip install --upgrade pip setuptools wheel + pip install -r requirements.txt + + - name: Generate calendars + run: python tools/merge_cals.py + + - name: Copy calendar to output dir + run: cp static/all.ics public/all.ics + + - name: Update homepage with latest event + run: upcoming="$(python tools/gen_upcoming.py static/all.ics 20 5 | tr '\n' ' ')" && sed -i "s#CALENDAR#$upcoming#g" public/index.html + + - name: Generate timestamp + run: echo "timestamp=$(date -u +'%Y-%m-%dT%H%M%SZ')" >> $GITHUB_ENV + + - name: Create Release Archive + uses: thedoctor0/zip-release@0.7.6 + with: + type: zip + filename: ../release-${{ github.ref_name }}-${{ env.timestamp }}.zip + directory: public + + - name: Create Release + uses: ncipollo/release-action@v1.16.0 + with: + tag: ${{ github.ref_name }}-${{ env.timestamp }} + name: Website ${{ github.ref_name }} version ${{ env.timestamp }} + body: Website ${{ github.ref_name }} version ${{ env.timestamp }} + artifacts: release-${{ github.ref_name }}-${{ env.timestamp }}.zip + token: ${{ secrets.GITEA_TOKEN }} \ No newline at end of file