ci: switch to woodpecker and gitea
This commit is contained in:
parent
0607a7de20
commit
6f392e5216
14 changed files with 350 additions and 279 deletions
80
.woodpecker/publish.yaml
Normal file
80
.woodpecker/publish.yaml
Normal file
|
@ -0,0 +1,80 @@
|
|||
# SPDX-FileCopyrightText: 2023 Johannes Loher
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
$schema: https://raw.githubusercontent.com/woodpecker-ci/woodpecker/master/pipeline/schema/schema.json
|
||||
|
||||
variables:
|
||||
- &node_image node:lts
|
||||
- &enable_pnpm
|
||||
- corepack enable
|
||||
- corepack prepare pnpm@latest --activate
|
||||
|
||||
when:
|
||||
event: tag
|
||||
evaluate: CI_COMMIT_TAG matches "^[0-9]+\\\\.[0-9]+\\\\.[0-9]+$"
|
||||
|
||||
depends_on:
|
||||
- checks
|
||||
|
||||
steps:
|
||||
install:
|
||||
image: *node_image
|
||||
commands:
|
||||
- <<: *enable_pnpm
|
||||
- pnpm install --frozen-lockfile
|
||||
build:
|
||||
image: *node_image
|
||||
environment:
|
||||
NODE_ENV: production
|
||||
commands:
|
||||
- <<: *enable_pnpm
|
||||
- pnpm build
|
||||
package:
|
||||
group: prepare-release
|
||||
image: alpine:latest
|
||||
commands:
|
||||
- apk update
|
||||
- apk add zip curl
|
||||
- mv dist ${CI_REPO_NAME}
|
||||
- zip -r ${CI_REPO_NAME}.zip ${CI_REPO_NAME}/*
|
||||
changelog:
|
||||
group: prepare-release
|
||||
image: *node_image
|
||||
commands:
|
||||
- <<: *enable_pnpm
|
||||
- pnpm changelog
|
||||
release:
|
||||
image: woodpeckerci/plugin-gitea-release
|
||||
settings:
|
||||
base_url: ${CI_FORGE_URL}
|
||||
title: ${CI_COMMIT_TAG}
|
||||
note: CHANGELOG.md
|
||||
files:
|
||||
- ${CI_REPO_NAME}.zip
|
||||
- ${CI_REPO_NAME}/system.json
|
||||
api_key:
|
||||
from_secret: forge_token
|
||||
publish-latest-manifest:
|
||||
group: publish
|
||||
image: alpine:latest
|
||||
commands:
|
||||
- apk update
|
||||
- apk add curl
|
||||
- 'curl --header "Authorization: token $${FORGE_TOKEN}" -X "DELETE" "${CI_FORGE_URL}/api/packages/${CI_REPO_OWNER}/generic/${CI_REPO_NAME}/latest/system.json"'
|
||||
- 'curl --fail --header "Authorization: token $${FORGE_TOKEN}" --upload-file ${CI_REPO_NAME}/system.json "${CI_FORGE_URL}/api/packages/${CI_REPO_OWNER}/generic/${CI_REPO_NAME}/latest/system.json"'
|
||||
secrets:
|
||||
- forge_token
|
||||
publish-to-foundry-admin:
|
||||
group: publish
|
||||
image: johannesloher/foundry-publish
|
||||
environment:
|
||||
FVTT_DELETE_OBSOLETE_VERSIONS: "true"
|
||||
commands:
|
||||
- export FVTT_MANIFEST_PATH=${CI_REPO_NAME}/system.json
|
||||
- export FVTT_MANIFEST_URL=${CI_REPO_URL}/releases/download/${CI_COMMIT_TAG}/system.json
|
||||
- foundry-publish
|
||||
secrets:
|
||||
- fvtt_package_id
|
||||
- fvtt_username
|
||||
- fvtt_password
|
Loading…
Add table
Add a link
Reference in a new issue