Skip to content

Build and Deploy Release Check dashboard #407

Build and Deploy Release Check dashboard

Build and Deploy Release Check dashboard #407

# #############################################################################
# Copyright (c) 2023 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License, Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0.
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# SPDX-License-Identifier: Apache-2.0
# #############################################################################
---
name: Build and Deploy Release Check dashboard
on:
workflow_dispatch:
inputs:
github_token:
description: "Auth token for GitHub API requests"
required: false
schedule:
# Run every day at 01:00 at night
- cron: "0 1 * * *" # UTC time
env:
DASHBOARD_DIR: "release-automation"
GITHUB_ACCESS_TOKEN: ${{ github.event.inputs.github_token != '' && github.event.inputs.github_token || secrets.GITHUB_TOKEN }}
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
# See: https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs
permissions:
contents: write
pages: write
id-token: write
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: setup Go
uses: actions/setup-go@v5
with:
go-version-file: "${{ env.DASHBOARD_DIR }}/go.mod"
- name: build static dashboard
run: |
echo "::add-mask::${{ env.GITHUB_ACCESS_TOKEN}}"
echo "GITHUB_ACCESS_TOKEN=${{ env.GITHUB_ACCESS_TOKEN}}" >> $GITHUB_ENV
cd ${{ env.DASHBOARD_DIR }}
go run main.go buildDashboard
env:
DASHBOARD_ASSETS_PATH: "/sig-release/assets"
# Docs: https://github.com/peaceiris/actions-gh-pages
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: "${{ env.DASHBOARD_DIR }}/build"
# The following lines assign commit authorship to the official
# GH-Actions bot for deploys to `gh-pages` branch:
# https://github.com/actions/checkout/issues/13#issuecomment-724415212
# The GH actions bot is used by default if you didn't specify the two fields.
# You can swap them out with your own user credentials.
user_name: github-actions[bot]
user_email: 41898282+github-actions[bot]@users.noreply.github.com