Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#218 migrate to setup-tebako and update checkout to v4 #219

Merged
merged 5 commits into from
Feb 9, 2024
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 17 additions & 35 deletions .github/workflows/alpine.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
foreign_pr: ${{ steps.check.outputs.foreign_pr }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Retrieve tags
run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* || true
Expand All @@ -59,42 +59,24 @@ jobs:
container:
image: alpine:3.17
steps:
- name: Install packages
run: |
apk --no-cache --upgrade add build-base cmake git bash \
autoconf boost-static boost-dev flex-dev bison make \
binutils-dev libevent-dev acl-dev sed python3 pkgconfig \
lz4-dev openssl-dev zlib-dev xz ninja zip unzip curl \
libunwind-dev libdwarf-dev gflags-dev elfutils-dev \
libevent-static openssl-libs-static lz4-static xz-dev \
zlib-static libunwind-static acl-static tar libffi-dev \
gdbm-dev yaml-dev yaml-static ncurses-dev ncurses-static \
readline-dev readline-static p7zip ruby-dev gcompat \
gettext-dev gperf brotli-dev brotli-static jemalloc-dev \
fmt-dev xz-static clang

- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup environment
run: cat common.env alpine.env >> $GITHUB_ENV
run: cat common.env >> $GITHUB_ENV

- name: Install bundler
run: gem install bundler -v ${{ env.BUNDLER_VER }}

- name: Tebako setup cache
uses: actions/cache@v3
- name: Setup Tebako
uses: tamatebako/tebako/.github/actions/setup-tebako@main
with:
path: ${{ env.TEBAKO_DIR }}/${{ env.DEPS }}
key: ${{ env.OS_VER }}-${{ env.CC }}-${{ hashFiles('**/common.env') }}-${{ hashFiles('**/alpine.env') }}-v${{ env.CACHE_VER }}

- name: Install tebako
run: gem install tebako
cache: build
cache_ver: ${{ env.CACHE_VER }}
cache_path: ${{ env.TEBAKO_DIR }}
bundler_version: ${{ env.BUNDLER_VER }}

- name: package metanorma
run: make build/bin/metanorma-linux-musl-x86_64

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: metanorma-linux-musl-x86_64
path: build/bin/metanorma-linux-musl-x86_64
Expand Down Expand Up @@ -128,20 +110,20 @@ jobs:
matrix: ${{ fromJson(needs.build-matrix.outputs.samples-matrix) }}
steps:
- name: Install packages
run: |
run: |
apk --no-cache --upgrade add git libstdc++ xz libarchive \
openjdk17-jre-headless openssl fontconfig ttf-dejavu tar

- uses: actions/checkout@v3
- uses: actions/checkout@v4

- run: rm Gemfile

- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: metanorma-linux-musl-x86_64
path: build/bin

- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.relaton
key: relaton-linux-${{ matrix.flavor.id }}
Expand All @@ -150,7 +132,7 @@ jobs:
- run: chmod +x build/bin/metanorma-linux-musl-x86_64

- name: Fetch samples (${{ matrix.flavor.id }})
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
repository: metanorma/mn-samples-${{ matrix.flavor.id }}
Expand All @@ -166,7 +148,7 @@ jobs:
-c samples/metanorma.yml \
--agree-to-terms

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: site-${{ matrix.flavor.id }}
path: _site
Expand All @@ -176,7 +158,7 @@ jobs:
runs-on: ubuntu-latest
needs: test
steps:
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: metanorma-linux-musl-x86_64
path: build/bin
Expand Down
52 changes: 17 additions & 35 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
foreign_pr: ${{ steps.check.outputs.foreign_pr }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Retrieve tags
run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* || true
- name: Set output variables
Expand All @@ -58,42 +58,24 @@ jobs:
if: "(github.event_name == 'push' && needs.prepare.outputs.head_tag == '') || github.event_name == 'pull_request' || github.event_name == 'schedule'"
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup environment
run: cat common.env macos.env >> $GITHUB_ENV
run: cat common.env >> $GITHUB_ENV

- name: Select XCode
uses: maxim-lobanov/setup-xcode@v1
- name: Setup Tebako
uses: tamatebako/tebako/.github/actions/setup-tebako@main
with:
xcode-version: ${{ env.XCODE_VERSION }}

- name: Install packages
run: |
brew update
brew install \
bison flex binutils double-conversion boost jemalloc fmt glog \
gnu-sed bash ncurses libffi pkg-config

- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ env.RUBY_VER }}
bundler: ${{ env.BUNDLER_VER }}

- name: Process cache
uses: actions/cache@v3
with:
path: ${{ env.TEBAKO_DIR }}/${{ env.DEPS }}
key: ${{ env.OS_VER }}-${{ env.CC }}-${{ hashFiles('**/common.env') }}-${{ hashFiles('**/macos.env') }}-v${{ env.CACHE_VER }}

- name: Install tebako
run: gem install tebako
cache: build
cache_ver: ${{ env.CACHE_VER }}
cache_path: ${{ env.TEBAKO_DIR }}
ruby_version: ${{ env.RUBY_VER }}
bundler_version: ${{ env.BUNDLER_VER }}

- name: package metanorma
run: make build/bin/metanorma-darwin-x86_64

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: metanorma-darwin-x86_64
path: build/bin/metanorma-darwin-x86_64
Expand Down Expand Up @@ -122,25 +104,25 @@ jobs:
fail-fast: false
matrix: ${{ fromJson(needs.build-matrix.outputs.samples-matrix) }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- run: rm Gemfile

- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: metanorma-darwin-x86_64
path: build/bin

- run: chmod a+x build/bin/metanorma-darwin-x86_64

- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.relaton
key: relaton-macos-${{ matrix.flavor.id }}
restore-keys: relaton-macos-${{ matrix.flavor.id }}

- name: Fetch samples (${{ matrix.flavor.id }})
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
repository: metanorma/mn-samples-${{ matrix.flavor.id }}
Expand All @@ -157,7 +139,7 @@ jobs:
-o site-${{ matrix.flavor.id }} \
--agree-to-terms

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: site-${{ matrix.flavor.id }}
path: site-${{ matrix.flavor.id }}
Expand All @@ -167,7 +149,7 @@ jobs:
runs-on: macos-11
needs: test
steps:
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: metanorma-darwin-x86_64
path: build/bin
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release_tag.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
runs-on: ubuntu-latest
needs: prepare
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
token: ${{ secrets.METANORMA_CI_PAT_TOKEN }}

Expand Down
53 changes: 17 additions & 36 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
foreign_pr: ${{ steps.check.outputs.foreign_pr }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Retrieve tags
run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* || true
Expand All @@ -59,45 +59,26 @@ jobs:
if: "(github.event_name == 'push' && needs.prepare.outputs.head_tag == '') || github.event_name == 'pull_request' || github.event_name == 'schedule'"
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup environment
run: cat common.env ubuntu.env >> $GITHUB_ENV
run: cat common.env >> $GITHUB_ENV

# ---------- Start of tebako prerequisites
- name: Install packages
run: |
sudo apt-get -y update
sudo apt-get -y install \
binutils-dev libevent-dev acl-dev libfmt-dev libjemalloc-dev \
libdouble-conversion-dev libiberty-dev liblz4-dev liblzma-dev libssl-dev \
libboost-filesystem-dev libboost-program-options-dev libboost-system-dev \
libboost-iostreams-dev libboost-date-time-dev libboost-context-dev \
libboost-regex-dev libboost-thread-dev libbrotli-dev libunwind-dev \
libdwarf-dev libelf-dev libgoogle-glog-dev libffi-dev libgdbm-dev \
libyaml-dev libncurses-dev libreadline-dev libutfcpp-dev

- name: Install Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ env.RUBY_VER }}
bundler: ${{ env.BUNDLER_VER }}

- name: Tebako setup cache
uses: actions/cache@v3
- name: Setup Tebako
uses: tamatebako/tebako/.github/actions/setup-tebako@main
with:
path: ${{ env.TEBAKO_DIR }}/${{ env.DEPS }}
key: ${{ env.OS_VER }}-${{ env.CC }}-${{ hashFiles('**/common.env') }}-${{ hashFiles('**/ubuntu.env') }}-v${{ env.CACHE_VER }}

- name: Install tebako
run: sudo gem install tebako
cache: build
cache_ver: ${{ env.CACHE_VER }}
cache_path: ${{ env.TEBAKO_DIR }}
ruby_version: ${{ env.RUBY_VER }}
bundler_version: ${{ env.BUNDLER_VER }}

- name: Package metanorma
run: |
make build/bin/metanorma-linux-gnu-x86_64
mv -T build/bin/metanorma-linux-gnu-x86_64 build/bin/metanorma-linux-x86_64

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: metanorma-linux-x86_64
path: build/bin/metanorma-linux-x86_64
Expand Down Expand Up @@ -127,16 +108,16 @@ jobs:
matrix: ${{ fromJson(needs.build-matrix.outputs.samples-matrix) }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- run: rm Gemfile

- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: metanorma-linux-x86_64
path: build/bin

- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.relaton
key: relaton-linux-${{ matrix.flavor.id }}
Expand All @@ -145,7 +126,7 @@ jobs:
- run: chmod +x build/bin/metanorma-linux-x86_64

- name: Fetch samples (${{ matrix.flavor.id }})
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
repository: metanorma/mn-samples-${{ matrix.flavor.id }}
Expand All @@ -161,7 +142,7 @@ jobs:
-c samples/metanorma.yml \
--agree-to-terms

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: site-${{ matrix.flavor.id }}
path: _site
Expand All @@ -171,7 +152,7 @@ jobs:
runs-on: ubuntu-latest
needs: test
steps:
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: metanorma-linux-x86_64
path: build/bin
Expand Down
Loading
Loading