diff --git a/.woodpecker/ci.yml b/.woodpecker/ci.yml index f0c4fa2..fa972e7 100644 --- a/.woodpecker/ci.yml +++ b/.woodpecker/ci.yml @@ -1,45 +1,57 @@ -when: - - event: [push, manual] - -labels: - ci: domain-linux-native - platform: linux/amd64 - -clone: - - name: git - image: woodpeckerci/plugin-git:2.9.3 - settings: - remote: - from_secret: gitea_clone_webdrop - lfs: false - +when: + - event: [push, manual] + +labels: + ci: domain-linux-native + platform: linux/amd64 + +clone: + - name: git + image: woodpeckerci/plugin-git:2.9.3 + settings: + remote: + from_secret: gitea_clone_webdrop + lfs: false + steps: - api-contract: + prefetch-dependencies: image: bash commands: - - node scripts/check-api-contract.mjs + - mkdir -p "$HOME/.cache/woodpecker/webdrop/npm" "$HOME/.cache/woodpecker/webdrop/nuget" + - cd packages/core + - npm ci --cache "$HOME/.cache/woodpecker/webdrop/npm" --prefer-offline --no-audit + - cd ../../web + - npm ci --cache "$HOME/.cache/woodpecker/webdrop/npm" --prefer-offline --no-audit + - cd .. + - NUGET_PACKAGES="$HOME/.cache/woodpecker/webdrop/nuget" dotnet restore server/WebDrop.slnx + api-contract: + image: bash + commands: + - node scripts/check-api-contract.mjs + core-and-web: image: bash + depends_on: [prefetch-dependencies] commands: - cd packages/core - - npm ci - npm run typecheck - - npm test - - npm run vectors:check - - npm run build - + - npm test + - npm run vectors:check + - npm run build + web: image: bash + depends_on: [prefetch-dependencies] commands: - cd web - - npm ci - npm run typecheck - - npm run lint:css - - npm test - - npm run build - + - npm run lint:css + - npm test + - npm run build + server: image: bash + depends_on: [prefetch-dependencies] commands: - - dotnet test server/WebDrop.slnx --configuration Release --verbosity minimal + - NUGET_PACKAGES="$HOME/.cache/woodpecker/webdrop/nuget" dotnet test server/WebDrop.slnx --configuration Release --verbosity minimal --no-restore