Update .hg mercurial directories #159
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: takelage amd64 | |
on: | |
push: | |
workflow_dispatch: | |
jobs: | |
takelage-amd64: | |
runs-on: ubuntu-latest | |
if: startsWith(github.ref, 'refs/tags/') | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v3 | |
- name: Set up ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: ruby | |
- name: Install tau | |
run: gem install takeltau | |
- name: Configure tau | |
run: | | |
echo "docker_entrypoint_options: --no-git --no-gopass --no-gpg --no-ssh" >> $HOME/.takelage.yml | |
echo "docker_repo: takelbuild" >> $HOME/.takelage.yml | |
echo "docker_tag: latest-amd64" >> $HOME/.takelage.yml | |
cat $HOME/.takelage.yml | |
- name: Pull takelage image | |
run: tau update | |
- name: Read mutagen version | |
run: | | |
MUTAGEN=$(docker inspect --format '{{ index .Config.Labels "mutagen" }}' takelwerk/takelbuild:latest-amd64) | |
echo "MUTAGEN=$MUTAGEN" >> "$GITHUB_ENV" | |
- name: Install mutagen | |
run: | | |
MUTAGEN_FILE=https://github.com/mutagen-io/mutagen/releases/download/v${{ env.MUTAGEN }}/mutagen_linux_amd64_v${{ env.MUTAGEN }}.tar.gz | |
wget --header="Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" -O /tmp/mutagen.tar.gz $MUTAGEN_FILE | |
sudo tar xvfz /tmp/mutagen.tar.gz -C /usr/local/bin | |
mutagen daemon start | |
- name: Start an instance of takelage | |
run: tau docker container daemon | |
- name: Install lastversion | |
run: tau docker container command "sudo pip install lastversion --break-system-packages" | |
- name: Lint ruby | |
run: tau docker container command "rake rubylint" | |
- name: Lint project | |
run: tau docker container command "rake images:project:molecule:lint" | |
- name: Test takelscripts | |
run: tau docker container command "rake takelscripts" | |
- name: Build takelage project image with packer | |
run: tau docker container command "rake images:project:build" | |
- name: Test takelage project image | |
run: tau docker container command "rake images:project:molecule:test" | |
- name: Login to docker hub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Tag and push image | |
run: | | |
tau docker container command "rake dockerhub:project:tag:latest:amd64" | |
tau docker container command "rake dockerhub:project:push:latest:amd64" | |
tau docker container command "rake dockerhub:project:tag:version:amd64" | |
tau docker container command "rake dockerhub:project:push:version:amd64" | |
- name: Pull arm64 latest image | |
run: | | |
tau docker container command "rake dockerhub:project:pull:latest:arm64" | |
- name: Create and push docker latest manifest | |
run: | | |
tau docker container command "rake dockerhub:project:manifest:create:latest" | |
tau docker container command "rake dockerhub:project:manifest:push:latest" | |
- name: Create and push docker version manifest if arm64 version image exists | |
run: | | |
if tau docker container command "rake dockerhub:project:pull:version:arm64"; then \ | |
tau docker container command "rake dockerhub:project:manifest:create:version" && \ | |
tau docker container command "rake dockerhub:project:manifest:push:version"; fi |