Upload plugin zip to CI artifacts #10
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# These workflows have been nicked from https://github.com/influxdata/grafana-flightsql-datasource | |
name: CI | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup Node.js environment | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '16' | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --immutable --prefer-offline | |
- name: Check types | |
run: yarn typecheck | |
- name: Lint | |
run: yarn lint | |
- name: Unit tests | |
run: yarn test:ci | |
- name: Build frontend | |
run: yarn build | |
- name: Check for backend | |
id: check-for-backend | |
run: | | |
if [ -f "Magefile.go" ] | |
then | |
echo "has-backend=true" >> $GITHUB_OUTPUT | |
fi | |
- name: Setup Go environment | |
if: steps.check-for-backend.outputs.has-backend == 'true' | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '1.21' | |
- name: Test backend | |
if: steps.check-for-backend.outputs.has-backend == 'true' | |
uses: magefile/mage-action@v3 | |
with: | |
version: latest | |
args: coverage | |
- name: Build backend | |
if: steps.check-for-backend.outputs.has-backend == 'true' | |
uses: magefile/mage-action@v3 | |
with: | |
version: latest | |
args: build | |
- name: Start grafana docker | |
run: yarn server -d | |
- name: Run e2e tests | |
run: yarn e2e | |
- name: Stop grafana docker | |
run: docker-compose down | |
- name: Package plugin | |
run: | |
pushd dist | |
tar -czvf ../grafana-dashboard-reporter-app.tar.gz * | |
popd | |
sha256sum grafana-dashboard-reporter-app.tar.gz > grafana-dashboard-reporter-app.sha256 | |
- name: Release nightly | |
uses: softprops/action-gh-release@v1 | |
with: | |
prerelease: true | |
name: nightly | |
tag_name: nightly | |
files: | | |
grafana-dashboard-reporter-app.tar.gz | |
grafana-dashboard-reporter-app.sha256 | |
fail_on_unmatched_files: true | |
body: | | |
cat <<EOF >> $GITHUB_STEP_SUMMARY | |
# Latest Build Complete! :rocket: | |
For the public download links of these build artifacts, please see: | |
<https://github.com/mahendrapaipuri/grafana-dashboard-reporter-app/releases/tag/nightly> | |
EOF |