diff --git a/.github/workflows/openshift.yml b/.github/workflows/openshift.yml index 7502f0a5d3..9370855a5a 100644 --- a/.github/workflows/openshift.yml +++ b/.github/workflows/openshift.yml @@ -15,7 +15,7 @@ # limitations under the License. # --------------------------------------------------------------------------- -name: openshift-builder +name: openshift on: pull_request: @@ -163,4 +163,5 @@ jobs: oc login -u developer # Then run integration tests + make test-integration make test-builder diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 16c5b8f7fa..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,67 +0,0 @@ -# --------------------------------------------------------------------------- -# 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. -# --------------------------------------------------------------------------- - -# Configuration file for Travis continuous integration. -# See https://travis-ci.org/apache/camel-k - -sudo: required - -language: go - -# Go modules require xenial for mercurial TLS 1.2 support -dist: xenial - -go: - - 1.13.x - -install: - - go mod tidy - -env: - global: - - OPENSHIFT_VERSION=3.11.0 - - OPENSHIFT_COMMIT=0cbc58b - - MAVEN_OPTS=-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn - -services: - - docker - -before_script: - - true - -script: - - ./script/travis_build.sh - -cache: - directories: - - $GOPATH/pkg/mod - -# Installing newer openjdk11 because of issues with 11.0.2 -# See: -# - https://bugs.openjdk.java.net/browse/JDK-8213202 -# - https://travis-ci.community/t/old-java-version-in-bionic/4726/2 -before_install: - - echo $JAVA_HOME - - which java - - sudo rm -rf /usr/local/lib/jvm/ - - sudo add-apt-repository -y ppa:openjdk-r/ppa - - sudo apt-get update - - sudo apt-get install -y openjdk-11-jdk-headless - - export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/ - - which java - - java -version - - $JAVA_HOME/bin/java -version diff --git a/script/travis_build.sh b/script/travis_build.sh deleted file mode 100755 index d3f50b35c4..0000000000 --- a/script/travis_build.sh +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/sh - -# 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. - -set -e - -# Print JAVA_HOME -echo "Java home: $JAVA_HOME" - -# First build the whole project -make - -# set docker0 to promiscuous mode -sudo ip link set docker0 promisc on - -# Download and install the oc binary -sudo mount --make-shared / -sudo service docker stop -sudo echo '{"insecure-registries": ["172.30.0.0/16"]}' | sudo tee /etc/docker/daemon.json > /dev/null -sudo service docker start -wget https://github.com/openshift/origin/releases/download/v$OPENSHIFT_VERSION/openshift-origin-client-tools-v$OPENSHIFT_VERSION-$OPENSHIFT_COMMIT-linux-64bit.tar.gz -tar xvzOf openshift-origin-client-tools-v$OPENSHIFT_VERSION-$OPENSHIFT_COMMIT-linux-64bit.tar.gz > oc.bin -sudo mv oc.bin /usr/local/bin/oc -sudo chmod 755 /usr/local/bin/oc - -# Figure out this host's IP address -IP_ADDR="$(ip addr show eth0 | grep "inet\b" | awk '{print $2}' | cut -d/ -f1)" - -# Start OpenShift -oc cluster up --public-hostname=$IP_ADDR --enable=persistent-volumes,registry,router - -oc login -u system:admin - -# Wait until we have a ready node in openshift -TIMEOUT=0 -TIMEOUT_COUNT=60 -until [ $TIMEOUT -eq $TIMEOUT_COUNT ]; do - if [ -n "$(oc get nodes | grep Ready)" ]; then - break - fi - - echo "openshift is not up yet" - let TIMEOUT=TIMEOUT+1 - sleep 5 -done - -if [ $TIMEOUT -eq $TIMEOUT_COUNT ]; then - echo "Failed to start openshift" - exit 1 -fi - -echo "openshift is deployed and reachable" -oc describe nodes - -echo "Adding maven artifacts to the image context" -make PACKAGE_ARTIFACTS_STRATEGY=download package-artifacts - -echo "Copying binary file to docker dir" -mkdir -p ./build/_output/bin -cp ./kamel ./build/_output/bin/ - -echo "Building the images" -export IMAGE=docker.io/apache/camel-k:$(make version) -docker build -t "${IMAGE}" -f build/Dockerfile . - -echo "installing camel k cluster resources" -export KAMEL_INSTALL_MAVEN_REPOSITORIES=$(make get-staging-repo) -./kamel install --cluster-setup - -oc login -u developer - -# Then run integration tests -make test-integration