Merge pull request #2425 from OctopusDeploy/robe/win2008-limited-support #661
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
name: Deploy | |
on: | |
# Disable on push temporarily while we're doing the migration | |
workflow_dispatch: | |
push: | |
branches: [ main ] | |
# Allow this job to clone the repo and create a page deployment | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build_and_deploy: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
env: | |
SHOULD_DEPLOY: ${{ secrets.OCTOPUSSERVERURL != '' || '' }} | |
OCTOPUS_URL: ${{ secrets.OCTOPUSSERVERURL }} | |
OCTOPUS_API_KEY: ${{ secrets.OCTOPUSSERVERAPIKEY }} | |
OCTOPUS_SPACE: "DevOps Microsite" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install pnpm | |
uses: pnpm/action-setup@v4 | |
with: | |
version: 9.10.0 | |
run_install: false | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: 'pnpm' | |
cache-dependency-path: 'pnpm-lock.yaml' | |
- name: PNPM and Playwright install | |
run: | | |
echo; echo "cd to workspace" | |
cd $GITHUB_WORKSPACE | |
echo; echo "listing" | |
ls | |
echo; echo "NPM install" | |
pnpm install | |
- name: Astro build and test | |
run: | | |
export NODE_OPTIONS=--max_old_space_size=4096 | |
pnpm dev:img | |
pnpm test | |
node ./src/themes/octopus/utilities/page-report.js | |
- name: Set Version | |
run: | | |
echo "PACKAGE_VERSION=$(date +'%Y.%m.%d').$GITHUB_RUN_NUMBER" >> $GITHUB_ENV | |
- name: Check output | |
run: | | |
echo; echo "cd to workspace" | |
cd $GITHUB_WORKSPACE | |
echo; echo "listing" | |
ls | |
- name: Create a Zip package π | |
id: package | |
uses: OctopusDeploy/create-zip-package-action@v3 | |
with: | |
package_id: 'DocsMicrosite' | |
version: "${{ env.PACKAGE_VERSION }}" | |
base_path: "./dist" | |
output_folder: "./artifacts" | |
files: | | |
**/*.* | |
- name: Push a package to Octopus Deploy π | |
uses: OctopusDeploy/[email protected] | |
if: ${{ env.SHOULD_DEPLOY }} | |
with: | |
packages: ${{ steps.package.outputs.package_file_path }} | |
- name: Let people download package | |
uses: actions/upload-artifact@v3 | |
if: ${{ ! env.SHOULD_DEPLOY }} | |
with: | |
name: docs-microsite | |
path: ${{ steps.package.outputs.package_file_path }} | |
- name: Push build information to Octopus Deploy π | |
uses: OctopusDeploy/push-build-information-action@v3 | |
if: ${{ env.SHOULD_DEPLOY }} | |
with: | |
version: "${{ env.PACKAGE_VERSION }}" | |
packages: ${{ steps.package.outputs.package_file_path }} | |
- name: Create a release in Octopus Deploy π | |
id: "create_release" | |
uses: OctopusDeploy/create-release-action@v3 | |
if: ${{ env.SHOULD_DEPLOY }} | |
with: | |
project: "Docs Microsite" | |
package_version: "${{ env.PACKAGE_VERSION }}" | |
git_ref: ${{ github.ref }} |