ci: switch to Gitea
All checks were successful
ci/woodpecker/push/checks Pipeline was successful

This commit is contained in:
Johannes Loher 2023-06-21 20:15:19 +02:00
parent 6e46d90405
commit e51f56b1bf
3 changed files with 45 additions and 38 deletions

View file

@ -23,55 +23,50 @@ steps:
NODE_ENV: production NODE_ENV: production
commands: commands:
- yarn build - yarn build
- mv dist ${CI_REPO_NAME} package:
publish-artifacts:
group: prepare-release group: prepare-release
image: alpine:latest image: alpine:latest
commands: commands:
- apk update - apk update
- apk add zip curl - apk add zip curl
- mv dist ${CI_REPO_NAME}
- zip -r ${CI_REPO_NAME}.zip ${CI_REPO_NAME}/* - zip -r ${CI_REPO_NAME}.zip ${CI_REPO_NAME}/*
- export CI_FORGE_API_URL=${CI_FORGE_URL}/api/v4
- 'curl --fail --header "Authorization: Bearer $${FORGE_TOKEN}" --upload-file ${CI_REPO_NAME}.zip "$${CI_FORGE_API_URL}/projects/${CI_REPO_REMOTE_ID}/packages/generic/${CI_REPO_NAME}/${CI_COMMIT_TAG}/${CI_REPO_NAME}.zip"'
- 'curl --fail --header "Authorization: Bearer $${FORGE_TOKEN}" --upload-file ${CI_REPO_NAME}/$${PACKAGE_TYPE}.json "$${CI_FORGE_API_URL}/projects/${CI_REPO_REMOTE_ID}/packages/generic/${CI_REPO_NAME}/${CI_COMMIT_TAG}/$${PACKAGE_TYPE}.json"'
secrets:
- forge_token
- package_type
changelog: changelog:
group: prepare-release group: prepare-release
image: *node_image image: *node_image
commands: commands:
- yarn changelog - yarn changelog
release: release:
image: registry.gitlab.com/gitlab-org/release-cli:latest 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}/module.json
api_key:
from_secret: forge_token
publish-latest-manifest:
group: publish
image: alpine:latest
commands: commands:
- export CI_FORGE_API_URL=${CI_FORGE_URL}/api/v4 - apk update
- | - apk add curl
release-cli \ - 'curl --header "Authorization: token $${FORGE_TOKEN}" -X "DELETE" "${CI_FORGE_URL}/api/packages/${CI_REPO_OWNER}/generic/${CI_REPO_NAME}/latest/module.json"'
--server-url ${CI_FORGE_URL} \ - 'curl --fail --header "Authorization: token $${FORGE_TOKEN}" --upload-file ${CI_REPO_NAME}/module.json "${CI_FORGE_URL}/api/packages/${CI_REPO_OWNER}/generic/${CI_REPO_NAME}/latest/module.json"'
--private-token $${FORGE_TOKEN} \
--project-id ${CI_REPO_REMOTE_ID} \
create \
--name ${CI_COMMIT_TAG} \
--description CHANGELOG.md \
--tag-name ${CI_COMMIT_TAG} \
--assets-link "[\
{\"name\": \"${CI_REPO_NAME}.zip\", \"url\": \"$${CI_FORGE_API_URL}/projects/${CI_REPO_REMOTE_ID}/packages/generic/${CI_REPO_NAME}/${CI_COMMIT_TAG}/${CI_REPO_NAME}.zip\", \"filepath\": \"/${CI_REPO_NAME}.zip\", \"link_type\": \"package\"},\
{\"name\": \"$${PACKAGE_TYPE}.json\", \"url\": \"$${CI_FORGE_API_URL}/projects/${CI_REPO_REMOTE_ID}/packages/generic/${CI_REPO_NAME}/${CI_COMMIT_TAG}/$${PACKAGE_TYPE}.json\", \"filepath\": \"/$${PACKAGE_TYPE}.json\", \"link_type\": \"other\"}\
]"
secrets: secrets:
- forge_token - forge_token
- package_type
publish-to-foundry-admin: publish-to-foundry-admin:
group: publish
image: johannesloher/foundry-publish image: johannesloher/foundry-publish
environment: environment:
FVTT_DELETE_OBSOLETE_VERSIONS: 'true' FVTT_DELETE_OBSOLETE_VERSIONS: 'true'
commands: commands:
- export FVTT_MANIFEST_PATH=${CI_REPO_NAME}/$${PACKAGE_TYPE}.json - export FVTT_MANIFEST_PATH=${CI_REPO_NAME}/module.json
- export FVTT_MANIFEST_URL=${CI_REPO_URL}/-/releases/${CI_COMMIT_TAG}/downlaods/$${PACKAGE_TYPE}.json - export FVTT_MANIFEST_URL=${CI_REPO_URL}/releases/download/${CI_COMMIT_TAG}/module.json
- foundry-publish - foundry-publish
secrets: secrets:
- fvtt_package_id - fvtt_package_id
- fvtt_username - fvtt_username
- fvtt_password - fvtt_password
- package_type

View file

@ -6,6 +6,11 @@ SPDX-License-Identifier: MIT
# Darkness Dependent Vision # Darkness Dependent Vision
[![status-badge](https://ci.f3l.de/api/badges/1/status.svg)](https://ci.f3l.de/repos/1)
[![REUSE status](https://api.reuse.software/badge/git2.f3l.de/saluu/darkness-dependent-vision)](https://api.reuse.software/info/git2.f3l.de/saluu/darkness-dependent-vision)[![Forge installs](https://img.shields.io/badge/dynamic/json?label=Forge%20Installs&query=package.installs&suffix=%25&url=https%3A%2F%2Fforge-vtt.com%2Fapi%2Fbazaar%2Fpackage%2Fdarkness-dependent-vision&colorB=4aa94a)](https://forge-vtt.com/bazaar#package=darkness-dependent-vision)
[![Supported foundry versions](https://img.shields.io/endpoint?url=https://foundryshields.com/version?url=https%3A%2F%2Fgit2.f3l.de%2Fapi%2Fpackages%2Fsaluu%2Fgeneric%2Fdarkness-dependent-vision%2Flatest%2Fmodule.json)](https://git2.f3l.de/saluu/darkness-dependent-vision)
[![Ko-fi](https://img.shields.io/badge/Ko--fi-ghostfvtt-00B9FE?logo=kofi)](https://ko-fi.com/ghostfvtt)
A module for [Foundry Virtual Tabletop] that provides functionality to make the A module for [Foundry Virtual Tabletop] that provides functionality to make the
dim and bright vision of tokens depend on the scene's darkness level. dim and bright vision of tokens depend on the scene's darkness level.

View file

@ -7,16 +7,20 @@ import semver from 'semver';
import yargs from 'yargs'; import yargs from 'yargs';
import { hideBin } from 'yargs/helpers'; import { hideBin } from 'yargs/helpers';
const repository = 'saluu/darkness-dependent-vision'; const packageType = 'module';
const gitlabURL = 'https://git.f3l.de'; const repositoryOwner = process.env.CI_REPO_OWNER;
const repositoryName = process.env.CI_REPO_NAME;
const repositoryURL = process.env.CI_REPO_LINK;
const forgeURL = process.env.CI_FORGE_URL;
const getLicenseURL = (version) => `${gitlabURL}/${repository}/-/raw/${version}/LICENSE.md`; const manifestURL = `${forgeURL}/api/packages/${repositoryOwner}/generic/${repositoryName}/latest/${packageType}.json`;
const getReadmeURL = (version) => `${gitlabURL}/${repository}/-/raw/${version}/README.md`; const getDownloadURL = (version) => `${repositoryURL}/releases/download/${version}/${repositoryName}.zip`;
const getChangelogURL = (version) => `${gitlabURL}/${repository}/-/releases/${version}`; const bugsURL = `${repositoryURL}/issues`;
const getDownloadURL = (version) => const getChangelogURL = (version) => `${repositoryURL}/releases/tag/${version}`;
`${gitlabURL}/${repository}/-/releases/${version}/downloads/darkness-dependent-vision.zip`; const getReadmeURL = (version) => `${repositoryURL}/raw/tag/${version}/README.md`;
const getLicenseURL = (version) => `${repositoryURL}/raw/tag/${version}/LICENSE.md`;
const manifestPath = 'module.json'; const manifestPath = `${packageType}.json`;
/** /**
* Get the contents of the manifest file as object. * Get the contents of the manifest file as object.
@ -68,11 +72,14 @@ function bumpVersion(release) {
console.log(`Bumping version number to '${targetVersion}'`); console.log(`Bumping version number to '${targetVersion}'`);
packageJson.version = targetVersion; packageJson.version = targetVersion;
fs.writeJSONSync('package.json', packageJson, { spaces: 2 }); fs.writeJSONSync('package.json', packageJson, { spaces: 2 });
manifest.license = getLicenseURL(targetVersion);
manifest.readme = getReadmeURL(targetVersion);
manifest.changelog = getChangelogURL(targetVersion);
manifest.version = targetVersion; manifest.version = targetVersion;
manifest.url = repositoryURL;
manifest.manifest = manifestURL;
manifest.download = getDownloadURL(targetVersion); manifest.download = getDownloadURL(targetVersion);
manifest.bugs = bugsURL;
manifest.changelog = getChangelogURL(targetVersion);
manifest.readme = getReadmeURL(targetVersion);
manifest.license = getLicenseURL(targetVersion);
fs.writeJSONSync(manifestPath, manifest, { spaces: 2 }); fs.writeJSONSync(manifestPath, manifest, { spaces: 2 });
} }