blob: 69711ba8e14acfc5500dfc87e30c5efa28b14c72 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: OAP-E2E
on:
pull_request:
schedule:
- cron: '0 18 * * *'
env:
SW_AGENT_JDK_VERSION: 8
SEGMENT_DOWNLOAD_TIMEOUT_MINS: 5
concurrency:
group: e2e-storages-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
StoragePlugins:
if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking-banyandb') || (github.event_name != 'schedule')
name: Storage E2E
runs-on: ubuntu-latest
timeout-minutes: 90
strategy:
fail-fast: false
matrix:
test:
- name: BanyanDB
config: test/e2e-v2/cases/storage/banyandb/e2e.yaml
- name: Trace Profiling BanyanDB
config: test/e2e-v2/cases/profiling/trace/banyandb/e2e.yaml
- name: eBPF Profiling BanyanDB
config: test/e2e-v2/cases/profiling/ebpf/oncpu/banyandb/e2e.yaml
- name: Event BanyanDB
config: test/e2e-v2/cases/event/banyandb/e2e.yaml
- name: BanyanDB Cluster Mode
config: test/e2e-v2/cases/cluster/e2e.yaml
env:
TAG: ${{ github.sha }}
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v3
- name: Cache Go Modules
uses: actions/cache@v3
id: cache-go
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Cache Tools
uses: actions/cache@v3
id: cache-tool
with:
path: bin
key: ${{ runner.os }}-build-tool-${{ hashFiles('**version.mk') }}
restore-keys: |
${{ runner.os }}-build-tool-
- uses: actions/setup-node@v3
with:
node-version: 20.12
cache: 'npm'
cache-dependency-path: ui/package-lock.json
- name: Install Go
uses: actions/setup-go@v3
with:
go-version-file: 'go.mod'
- name: Update dependencies
if: steps.cache-go.outputs.cache-hit != 'true'
run: GOPROXY=https://proxy.golang.org go mod download
- name: Generate codes
run: make generate
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Build docker image
run: |
make docker.build || make docker.build
docker image ls
- name: ${{ matrix.test.name }}
uses: apache/skywalking-infra-e2e@1485ae03f0ad90496ad7626a5ae4a6a73a1f6296
with:
e2e-file: $GITHUB_WORKSPACE/${{ matrix.test.config }}
Storage:
if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking-banyandb') || (github.event_name != 'schedule')
runs-on: ubuntu-latest
timeout-minutes: 90
needs: [StoragePlugins]
steps:
- name: To pass or not pass
run: echo "Just to make the GitHub merge button green"