Skip to content

Merge pull request #161 from taoohong/nydus-encryption #432

Merge pull request #161 from taoohong/nydus-encryption

Merge pull request #161 from taoohong/nydus-encryption #432

name: Integration Test
on:
push:
branches: [ '*' ]
pull_request:
branches: [ main ]
env:
GO_VERSION: 1.18
HARBOR_VERSION: 2.4.1
NYDUS_VERSION: 2.1.6
OCI_IMAGE_NAME: wordpress
jobs:
accel_check:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Install Golang
uses: actions/setup-go@v4
with:
go-version: ${{ env.GO_VERSION }}
- name: Check
run: |
make install-check-tools
make check
accel_build:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Install Golang
uses: actions/setup-go@v4
with:
go-version: ${{ env.GO_VERSION }}
- name: Build Accel
run: |
make
- name: Upload Accel
uses: actions/upload-artifact@v3
with:
name: accel-artifact
path: |
./accelctl
./acceld
integration_test:
runs-on: ubuntu-latest
needs: [accel_build]
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Download Acceld
uses: actions/download-artifact@v3
with:
name: accel-artifact
- name: Install Harbor
run: |
wget https://github.com/goharbor/harbor/releases/download/v${{ env.HARBOR_VERSION }}/harbor-offline-installer-v${{ env.HARBOR_VERSION }}.tgz
tar xzvf harbor-offline-installer-v${{ env.HARBOR_VERSION }}.tgz
cp ./script/integration/harbor.yml harbor/harbor.yml
cd harbor
sudo ./install.sh
- name: Prepare Test Image
run: |
sudo docker pull ${{ env.OCI_IMAGE_NAME }}
sudo docker login -u admin -p Harbor12345 localhost
sudo docker tag ${{ env.OCI_IMAGE_NAME }} localhost/library/${{ env.OCI_IMAGE_NAME }}
sudo docker push localhost/library/${{ env.OCI_IMAGE_NAME }}
- name: Test Nydus Driver
run: |
chmod +x accel*
# Download nydus components
wget https://github.com/dragonflyoss/image-service/releases/download/v${{ env.NYDUS_VERSION }}/nydus-static-v${{ env.NYDUS_VERSION }}-linux-amd64.tgz
sudo tar xzvf nydus-static-v${{ env.NYDUS_VERSION }}-linux-amd64.tgz --wildcards --strip-components=1 -C /usr/bin/ nydus-static/*
./script/integration/nydus/test.sh ${{ env.OCI_IMAGE_NAME }}
- name: Test eStargz Driver
run: |
./script/integration/estargz/test.sh ${{ env.OCI_IMAGE_NAME }}
- name: Test one-time mode
run: |
./script/integration/one-time.sh ${{ env.OCI_IMAGE_NAME }}