Skip to content
Closed

In #44408

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
74 changes: 74 additions & 0 deletions .github/workflows/hugo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Deploy Hugo site to Pages

on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

# Default to bash
defaults:
run:
shell: bash

jobs:
# Build job
build:
runs-on: ubuntu-latest
env:
HUGO_VERSION: 0.128.0
steps:
- name: Install Hugo CLI
run: |
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb
- name: Install Dart Sass
run: sudo snap install dart-sass
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
- name: Install Node.js dependencies
run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true"
- name: Build with Hugo
env:
HUGO_CACHEDIR: ${{ runner.temp }}/hugo_cache
HUGO_ENVIRONMENT: production
run: |
hugo \
--minify \
--baseURL "${{ steps.pages.outputs.base_url }}/"
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ./public

# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v5
112 changes: 112 additions & 0 deletions .github/workflows/octopusdeploy.yml/Just
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by separate terms of service,
# privacy policy, and support documentation.
#
# This workflow will build and publish a Docker container which is then deployed through Octopus Deploy.
#
# The build job in this workflow currently assumes that there is a Dockerfile that generates the relevant application image.
# If required, this job can be modified to generate whatever alternative build artifact is required for your deployment.
#
# This workflow assumes you have already created a Project in Octopus Deploy.
# For instructions see https://octopus.com/docs/projects/setting-up-projects
#
# To configure this workflow:
#
# 1. Decide where you are going to host your image.
# This template uses the GitHub Registry for simplicity but if required you can update the relevant DOCKER_REGISTRY variables below.
#
# 2. Create and configure an OIDC credential for a service account in Octopus.
# This allows for passwordless authentication to your Octopus instance through a trust relationship configured between Octopus, GitHub and your GitHub Repository.
# https://octopus.com/docs/octopus-rest-api/openid-connect/github-actions
#
# 3. Configure your Octopus project details below:
# OCTOPUS_URL: update to your Octopus Instance Url
# OCTOPUS_SERVICE_ACCOUNT: update to your service account Id
# OCTOPUS_SPACE: update to the name of the space your project is configured in
# OCTOPUS_PROJECT: update to the name of your Octopus project
# OCTOPUS_ENVIRONMENT: update to the name of the environment to recieve the first deployment


name: 'Build and Deploy to Octopus Deploy'

on:
push:
branches:
- '"main"'

jobs:
build:
name: Build
runs-on: ubuntu-latest
permissions:
packages: write
contents: read
env:
DOCKER_REGISTRY: ghcr.io # TODO: Update to your docker registry uri
DOCKER_REGISTRY_USERNAME: ${{ github.actor }} # TODO: Update to your docker registry username
DOCKER_REGISTRY_PASSWORD: ${{ secrets.GITHUB_TOKEN }} # TODO: Update to your docker registry password
outputs:
image_tag: ${{ steps.meta.outputs.version }}
steps:
- uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v3.0.0

- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ${{ env.DOCKER_REGISTRY }}
username: ${{ env.DOCKER_REGISTRY_USERNAME }}
password: ${{ env.DOCKER_REGISTRY_PASSWORD }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.DOCKER_REGISTRY }}/${{ github.repository }}
tags: type=semver,pattern={{version}},value=v1.0.0-{{sha}}

- name: Build and push Docker image
id: push
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
deploy:
name: Deploy
permissions:
id-token: write
runs-on: ubuntu-latest
needs: [ build ]
env:
OCTOPUS_URL: 'https://your-octopus-url' # TODO: update to your Octopus Instance url
OCTOPUS_SERVICE_ACCOUNT: 'your-service-account-id' # TODO: update to your service account Id
OCTOPUS_SPACE: 'your-space' # TODO: update to the name of the space your project is configured in
OCTOPUS_PROJECT: 'your-project' # TODO: update to the name of your Octopus project
OCTOPUS_ENVIRONMENT: 'your-environment' # TODO: update to the name of the environment to recieve the first deployment

steps:
- name: Log in to Octopus Deploy
uses: OctopusDeploy/login@34b6dcc1e86fa373c14e6a28c5507d221e4de629 #v1.0.2
with:
server: '${{ env.OCTOPUS_URL }}'
service_account_id: '${{ env.OCTOPUS_SERVICE_ACCOUNT }}'

- name: Create Release
id: create_release
uses: OctopusDeploy/create-release-action@fea7e7b45c38c021b6bc5a14bd7eaa2ed5269214 #v3.2.2
with:
project: '${{ env.OCTOPUS_PROJECT }}'
space: '${{ env.OCTOPUS_SPACE }}'
packages: '*:${{ needs.build.outputs.image_tag }}'

- name: Deploy Release
uses: OctopusDeploy/deploy-release-action@b10a606c903b0a5bce24102af9d066638ab429ac #v3.2.1
with:
project: '${{ env.OCTOPUS_PROJECT }}'
space: '${{ env.OCTOPUS_SPACE }}'
release_number: '${{ steps.create_release.outputs.release_number }}'
environments: ${{ env.OCTOPUS_ENVIRONMENT }}
File renamed without changes.
64 changes: 0 additions & 64 deletions src/README.md

This file was deleted.

Loading
Loading