mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-09 16:00:22 +00:00
4b8b52e0de
Update CI merge job to build and push Arm64 image to quay.io/cephcsi/cephcsi:version-arm64. Add CI PR job running on Travis Arm64 nodes to make sure cephcsi compiles successfully on Arm64. No CI test job is availabe for Arm64 now due to below issues - k8s-csi sidecar images for Arm64 are not available - Travis Arm64 CI job runs inside unprivileged LXD which blocks launching minikube test environment Signed-off-by: Yibo Cai <yibo.cai@arm.com>
96 lines
2.7 KiB
YAML
96 lines
2.7 KiB
YAML
---
|
|
# need for docker build
|
|
sudo: true
|
|
dist: xenial
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- realpath
|
|
- ruby
|
|
services:
|
|
- docker
|
|
|
|
language: go
|
|
branches:
|
|
only:
|
|
- master
|
|
|
|
go: 1.12.x
|
|
|
|
env:
|
|
global:
|
|
- GOLANGCI_VERSION=v1.21.0
|
|
- GOSEC_VERSION=2.0.0
|
|
- TEST_COVERAGE=stdout
|
|
- GO_METALINTER_THREADS=1
|
|
- GO_COVER_DIR=_output
|
|
- VM_DRIVER=none
|
|
- MINIKUBE_VERSION=v1.6.0
|
|
- CHANGE_MINIKUBE_NONE_USER=true
|
|
- KUBECONFIG=$HOME/.kube/config
|
|
- DEP_VERSION=v0.5.4
|
|
|
|
before_install:
|
|
- mkdir -p $GOPATH/bin
|
|
- curl
|
|
https://raw.githubusercontent.com/golang/dep/${DEP_VERSION}/install.sh|sh
|
|
|
|
jobs:
|
|
include:
|
|
- name: static-check-make
|
|
install:
|
|
- gem install mdl
|
|
- pip install --user --upgrade pip
|
|
- pip install --user yamllint
|
|
# install golangci-lint
|
|
- curl -sf
|
|
"https://install.goreleaser.com/github.com/golangci/golangci-lint.sh"
|
|
| bash -s -- -b $GOPATH/bin "${GOLANGCI_VERSION}"
|
|
# install gosec
|
|
- curl -sfL
|
|
"https://raw.githubusercontent.com/securego/gosec/master/install.sh"
|
|
| sh -s -- -b $GOPATH/bin "${GOSEC_VERSION}"
|
|
# install helm for helm lint
|
|
- curl -L https://git.io/get_helm.sh | bash
|
|
script:
|
|
- make static-check
|
|
- make go-test
|
|
- make dep-check || travis_terminate 1;
|
|
|
|
- name: cephcsi with kube 1.13.7
|
|
env: K8S_FEATURE_GATES="BlockVolume=true,CSIBlockVolume=true,VolumeSnapshotDataSource=true"
|
|
script:
|
|
- scripts/skip-doc-change.sh || travis_terminate 0;
|
|
- make image-cephcsi || travis_terminate 1;
|
|
- scripts/travis-functest.sh v1.13.7 || travis_terminate 1;
|
|
|
|
- name: cephcsi with kube 1.15.6
|
|
script:
|
|
- scripts/skip-doc-change.sh || travis_terminate 0;
|
|
- make image-cephcsi || travis_terminate 1;
|
|
- scripts/travis-functest.sh v1.15.6 || travis_terminate 1;
|
|
|
|
- name: cephcsi with kube 1.17.0
|
|
script:
|
|
- scripts/skip-doc-change.sh || travis_terminate 0;
|
|
- make image-cephcsi || travis_terminate 1;
|
|
- scripts/travis-functest.sh v1.17.0 || travis_terminate 1;
|
|
|
|
- name: cephcsi on Arm64
|
|
arch: arm64
|
|
script:
|
|
- scripts/skip-doc-change.sh || travis_terminate 0;
|
|
- make image-cephcsi || travis_terminate 1;
|
|
# No CI test job is availabe for Arm64 now due to below issues
|
|
# - k8s-csi sidecar images for Arm64 are not available
|
|
# - Travis Arm64 CI job runs inside unprivileged LXD which blocks
|
|
# launching minikube test environment
|
|
- travis_terminate 0 # deploy only on x86
|
|
|
|
deploy:
|
|
- provider: script
|
|
on: # yamllint disable-line rule:truthy
|
|
all_branches: true
|
|
script: ./deploy.sh
|