diff --git a/.github/workflows/build-site.yml b/.github/workflows/build-site.yml new file mode 100644 index 0000000..4ea8f58 --- /dev/null +++ b/.github/workflows/build-site.yml @@ -0,0 +1,65 @@ +name: Build and Deploy Site +on: + push: + branches: + - master + workflow_dispatch: +permissions: + contents: read + pages: write + id-token: write +concurrency: + group: "pages" + cancel-in-progress: true +defaults: + run: + shell: bash + +jobs: + build: + runs-on: ubuntu-latest + env: + HUGO_VERSION: 0.108.0 + NODE_VERSION: 18.12.1 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: true + fetch-depth: 0 + - name: Setup pages + id: pages + uses: actions/configure-pages@v2 + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: "${{ env.NODE_VERSION }}" + - name: Setup Hugo + uses: peaceiris/actions-hugo@v2 + with: + hugo-version: "${{ env.HUGO_VERSION }}" + extended: true + - name: Configure npm + run: | + npm config set "@fortawesome:registry" https://npm.fontawesome.com/ + npm config set "//npm.fontawesome.com/:_authToken" ${{ secrets.FONTAWESOME_TOKEN }} + - name: Install postcss + run: | + npm -g install postcss-cli + - name: Install npm packages + run: | + npm ci + - name: Run Hugo + run: | + hugo --environment production --minify + - name: Upload artifact + uses: actions/upload-pages-artifact@v1 + with: + path: ./public + - name: Deploy to gh-pages + if: ${{ !env.ACT && github.ref == 'refs/heads/master' }} + uses: peaceiris/actions-gh-pages@v3 + with: + deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} + publish_dir: ./public + cname: millironx.com diff --git a/.github/workflows/hugo.yml b/.github/workflows/hugo.yml deleted file mode 100644 index 267b242..0000000 --- a/.github/workflows/hugo.yml +++ /dev/null @@ -1,85 +0,0 @@ -# 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: ["master"] - - # 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 one concurrent deployment -concurrency: - group: "pages" - cancel-in-progress: true - -# Default to bash -defaults: - run: - shell: bash - -jobs: - # Build job - build: - runs-on: ubuntu-latest - env: - HUGO_VERSION: 0.108.0 - NODE_VERSION: 18.12.1 - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - fetch-depth: 0 - - name: Install Node.js - uses: actions/setup-node@v3 - with: - node-version: "${{ env.NODE_VERSION }}" - - name: Install Hugo CLI - uses: peaceiris/actions-hugo@v2 - with: - hugo-version: "${{ env.HUGO_VERSION }}" - extended: true - - name: Setup Pages - id: pages - uses: actions/configure-pages@v2 - - name: Configure custom Node.js repositories - run: | - npm config set "@fortawesome:registry" https://npm.fontawesome.com/ - npm config set "//npm.fontawesome.com/:_authToken" ${{ secrets.FONTAWESOME_TOKEN }} - - name: Install postcss cli - run: npm install -g postcss-cli - - name: Install Node.js dependencies - run: npm ci - - name: Build with Hugo - env: - # For maximum backward compatibility with Hugo modules - HUGO_ENVIRONMENT: production - HUGO_ENV: production - run: | - hugo \ - --minify \ - --baseURL "${{ steps.pages.outputs.base_url }}/" - - name: Upload artifact - uses: actions/upload-pages-artifact@v1 - 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@v1 diff --git a/.gitpod.yml b/.gitpod.yml new file mode 100644 index 0000000..ceda606 --- /dev/null +++ b/.gitpod.yml @@ -0,0 +1,13 @@ +# List the start up tasks. Learn more https://www.gitpod.io/docs/config-start-tasks/ +tasks: + - name: Install Hugo dependencies + before: | + mkdir -p $HOME/.local/bin + curl -L https://github.com/gohugoio/hugo/releases/download/v0.104.3/hugo_extended_0.104.3_linux-amd64.tar.gz | tar xvz -C $HOME/.local/bin + export PATH=$HOME/.local/bin:$PATH + init: echo "Your version of Hugo is `hugo version`" + command: hugo server -D -F --baseUrl $(gp url 1313) --liveReloadPort=443 --appendPort=false --bind=0.0.0.0 +# List the ports to expose. Learn more https://www.gitpod.io/docs/config-ports/ +ports: + - port: 1313 + onOpen: open-preview