# 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 APPDATA: ${CI_WORKSPACE} 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