mirror of
https://github.com/didi/KnowStreaming.git
synced 2025-12-24 11:52:08 +08:00
Add km module kafka
This commit is contained in:
72
jenkins.sh
Executable file
72
jenkins.sh
Executable file
@@ -0,0 +1,72 @@
|
||||
#!/bin/bash
|
||||
# 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.
|
||||
|
||||
# This script is used for verifying changes in Jenkins. In order to provide faster feedback, the tasks are ordered so
|
||||
# that faster tasks are executed in every module before slower tasks (if possible). For example, the unit tests for all
|
||||
# the modules are executed before the integration tests.
|
||||
|
||||
# Run validation checks (compilation and static analysis)
|
||||
./gradlew clean compileJava compileScala compileTestJava compileTestScala \
|
||||
spotlessScalaCheck checkstyleMain checkstyleTest spotbugsMain rat \
|
||||
--profile --no-daemon --continue -PxmlSpotBugsReport=true "$@" \
|
||||
|| { echo 'Validation steps failed'; exit 1; }
|
||||
|
||||
# Run tests
|
||||
./gradlew unitTest integrationTest \
|
||||
--profile --no-daemon --continue -PtestLoggingEvents=started,passed,skipped,failed "$@" \
|
||||
|| { echo 'Test steps failed'; exit 1; }
|
||||
|
||||
# Verify that Kafka Streams archetype compiles
|
||||
if [ $JAVA_HOME = "/home/jenkins/tools/java/latest11" ] ; then
|
||||
echo "Skipping Kafka Streams archetype test for Java 11"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
./gradlew streams:install clients:install connect:json:install connect:api:install \
|
||||
|| { echo 'Could not install kafka-streams.jar (and dependencies) locally`'; exit 1; }
|
||||
|
||||
version=`grep "^version=" gradle.properties | cut -d= -f 2` \
|
||||
|| { echo 'Could not get version from `gradle.properties`'; exit 1; }
|
||||
|
||||
cd streams/quickstart \
|
||||
|| { echo 'Could not change into directory `streams/quickstart`'; exit 1; }
|
||||
|
||||
# variable $MAVEN_LATEST__HOME is provided by Jenkins (see build configuration)
|
||||
mvn=$MAVEN_LATEST__HOME/bin/mvn
|
||||
|
||||
$mvn clean install -Dgpg.skip \
|
||||
|| { echo 'Could not `mvn install` streams quickstart archetype'; exit 1; }
|
||||
|
||||
mkdir test-streams-archetype && cd test-streams-archetype \
|
||||
|| { echo 'Could not create test directory for stream quickstart archetype'; exit 1; }
|
||||
|
||||
echo "Y" | $mvn archetype:generate \
|
||||
-DarchetypeCatalog=local \
|
||||
-DarchetypeGroupId=org.apache.kafka \
|
||||
-DarchetypeArtifactId=streams-quickstart-java \
|
||||
-DarchetypeVersion=$version \
|
||||
-DgroupId=streams.examples \
|
||||
-DartifactId=streams.examples \
|
||||
-Dversion=0.1 \
|
||||
-Dpackage=myapps \
|
||||
|| { echo 'Could not create new project using streams quickstart archetype'; exit 1; }
|
||||
|
||||
cd streams.examples \
|
||||
|| { echo 'Could not change into directory `streams.examples`'; exit 1; }
|
||||
|
||||
$mvn compile \
|
||||
|| { echo 'Could not compile streams quickstart archetype project'; exit 1; }
|
||||
|
||||
Reference in New Issue
Block a user