Move docs into _site folder so we can add more non doc files #17
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 to AWS Amplify | |
on: | |
# Runs on pushes targeting the default branch | |
push: | |
branches: ["wiremock-amplify"] | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
permissions: | |
contents: read | |
id-token: write | |
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | |
concurrency: | |
group: "amplify" | |
cancel-in-progress: true | |
jobs: | |
# Build job | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: aws-actions/[email protected] | |
with: | |
role-to-assume: arn:aws:iam::499333472133:role/GitHub-wiremock.org-Deploy | |
aws-region: us-east-1 | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: "true" | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0 | |
with: | |
ruby-version: '2.7.6' # Not needed with a .ruby-version file | |
bundler: '2.4.10' | |
bundler-cache: false # runs 'bundle install' and caches installed gems automatically | |
cache-version: 3 # Increment this number if you need to re-download cached gems | |
- name: Update RubyGems and Co | |
run: | | |
gem uninstall rubygems-update | |
gem install rubygems-update -v 3.4.22 | |
update_rubygems | |
gem update --system | |
- name: Install Ruby Bundles | |
run: bundle install | |
- name: Build with Jekyll | |
# Outputs to the './_site' directory by default | |
run: bundle exec jekyll build --config '_config.yml' --baseurl "${{ steps.pages.outputs.base_path }}" | |
env: | |
JEKYLL_ENV: production | |
- name: Build 2.x with Jekyll | |
# Outputs to the './_site' directory by default | |
run: | | |
cd .submodules/wiremock.org-2.x | |
bundle exec jekyll build --config '../../_config.yml,../../_config-2.x.yml' --baseurl "${{ steps.pages.outputs.base_path }}" | |
env: | |
JEKYLL_ENV: production | |
- name: Build 3.x with Jekyll | |
# We use the same as the root build, but with additional config | |
run: | | |
bundle exec jekyll build --config '_config.yml,_config-3.x.yml' --baseurl "${{ steps.pages.outputs.base_path }}" | |
env: | |
JEKYLL_ENV: production | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.10" | |
- name: Install and configure Poetry | |
uses: snok/install-poetry@v1 | |
with: | |
version: 1.5.1 | |
- name: Install dependencies | |
run: pip install -r requirements.txt | |
- name: Build the docs site | |
run: mkdocs build | |
- name: Copy docs into _site | |
run: cp -r _site-docs _site/docs | |
- name: Deploy version branches to the website | |
run: | | |
ruby .scripts/merge-sitemaps.rb | |
mkdir _site/2.x | |
cp -R .submodules/wiremock.org-2.x/tmp/site_2x/* _site/2.x/ | |
mkdir _site/3.x | |
cp -R tmp/site_3x/* _site/3.x/ | |
# TODO: Uncomment when cleaned up (if ever) | |
# - name: Validate HTML and links | |
# uses: anishathalye/proof-html@v2 | |
# with: | |
# directory: ./_site | |
# enforce_https: false | |
- name: Deploy to Amplify | |
run: | | |
bash -x ./deploy-amplify.sh |