Skip to content

Commit

Permalink
Add AL2 build job
Browse files Browse the repository at this point in the history
  • Loading branch information
aaron-congo committed Feb 8, 2024
1 parent b5f5db4 commit 40610b1
Showing 1 changed file with 125 additions and 53 deletions.
178 changes: 125 additions & 53 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,66 +21,138 @@ concurrency:
cancel-in-progress: true

jobs:
build-and-test-go-client:
timeout-minutes: 25
# build-and-test-go-client:
# timeout-minutes: 25
# strategy:
# # Run all jobs
# fail-fast: false
# matrix:
# go:
# - '1.18'
# - '1.21'
# redis:
# - 6.2.14
# - 7.2.3
# os:
# - ubuntu-latest
# - macos-latest
#
# runs-on: ${{ matrix.os }}
#
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: recursive
#
# - name: Set up Go ${{ matrix.go }}
# uses: actions/setup-go@v5
# with:
# go-version: '^1.13.1'
#
# - name: Install shared software dependencies
# uses: ./.github/workflows/install-shared-dependencies
# with:
# os: ${{ matrix.os }}
# target: ${{ matrix.os == 'ubuntu-latest' && 'x86_64-unknown-linux-gnu' || 'x86_64-apple-darwin' }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
#
# - name: Install redis
# # TODO: make this step macos compatible: https://github.com/aws/glide-for-redis/issues/781
# if: ${{ matrix.os == 'ubuntu-latest' }}
# uses: ./.github/workflows/install-redis
# with:
# redis-version: ${{ matrix.redis }}
#
# - name: Install client dependencies
# working-directory: ./go
# run: make install-dependencies
#
# - name: Build client
# working-directory: ./go
# run: |
# go mod edit -go=${{ matrix.go }}
# make build
#
# - name: Run go vet linter
# working-directory: ./go
# run: go vet .
#
# - name: Run staticcheck linter
# working-directory: ./go
# run: staticcheck .
#
# - name: Run unit tests
# working-directory: ./go
# run: make unit-test-report
#
# - name: Upload test reports
# if: always()
# continue-on-error: true
# uses: actions/upload-artifact@v4
# with:
# name: test-reports-go-${{ matrix.go }}-redis-${{ matrix.redis }}-${{ matrix.os }}
# path: |
# go/reports/unit-test-report.html

build-amazonlinux-latest:
if: github.repository_owner == 'aws'
strategy:
# Run all jobs
fail-fast: false
matrix:
go:
# - '1.18'
- '1.21'
redis:
# - 6.2.14
- 7.2.3
os:
- ubuntu-latest
# - macos-latest

runs-on: ${{ matrix.os }}

# - 1.18.10
- 1.21.6
runs-on: ubuntu-latest
container: amazonlinux:latest
timeout-minutes: 15
steps:
- name: Install git
run: |
yum -y remove git
yum -y remove git-*
yum -y install https://packages.endpointdev.com/rhel/7/os/x86_64/endpoint-repo.x86_64.rpm
yum update
yum install -y git
git --version
- uses: actions/checkout@v4
with:
submodules: recursive

- name: Set up Go ${{ matrix.go }}
uses: actions/setup-go@v5
with:
go-version: '^1.13.1'
- name: Checkout submodules
run: |
git config --global --add safe.directory "$GITHUB_WORKSPACE"
git submodule update --init --recursive
- name: Install shared software dependencies
uses: ./.github/workflows/install-shared-dependencies
with:
os: ${{ matrix.os }}
target: ${{ matrix.os == 'ubuntu-latest' && 'x86_64-unknown-linux-gnu' || 'x86_64-apple-darwin' }}
os: "amazon-linux"
target: "x86_64-unknown-linux-gnu"
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Install redis
# TODO: make this step macos compatible: https://github.com/aws/glide-for-redis/issues/781
if: ${{ matrix.os == 'ubuntu-latest' }}
uses: ./.github/workflows/install-redis
with:
redis-version: ${{ matrix.redis }}

- name: Install client dependencies
working-directory: ./go
run: make install-dependencies
- name: Create a symbolic Link for redis6 binaries
run: |
ln -s /usr/bin/redis6-server /usr/bin/redis-server
ln -s /usr/bin/redis6-cli /usr/bin/redis-cli
- name: Build client
working-directory: ./go
- name: Install Go
run: |
wget https://go.dev/dl/go${{ matrix.go }}.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go${{ matrix.go }}.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
- name: Build rust part
working-directory: go
run: cargo build --release

- name: Build go part
working-directory: go
run: |
go mod edit -go=${{ matrix.go }}
make build
- name: Run go vet linter
working-directory: ./go
run: go vet .

- name: Run staticcheck linter
working-directory: ./go
run: staticcheck .

- name: Run unit tests
working-directory: ./go
run: make unit-test-report
Expand All @@ -94,15 +166,15 @@ jobs:
path: |
go/reports/unit-test-report.html
lint-rust:
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive

- uses: ./.github/workflows/lint-rust
with:
cargo-toml-folder: ./go
name: lint go rust
# lint-rust:
# timeout-minutes: 15
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: recursive
#
# - uses: ./.github/workflows/lint-rust
# with:
# cargo-toml-folder: ./go
# name: lint go rust

0 comments on commit 40610b1

Please sign in to comment.