forked from loafle/openapi-generator-original
Compare commits
10 Commits
master
...
travis_tes
Author | SHA1 | Date | |
---|---|---|---|
|
2177039d7c | ||
|
8544382d53 | ||
|
151017b672 | ||
|
6095a0676c | ||
|
d3153a8eae | ||
|
f2f10b429e | ||
|
f7d31a3eab | ||
|
72f6bda2f7 | ||
|
3e99d2df73 | ||
|
44caf2e7cf |
54
.travis.yml
54
.travis.yml
@ -41,29 +41,13 @@ addons:
|
|||||||
- petstore.swagger.io
|
- petstore.swagger.io
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
# install haskell
|
|
||||||
- curl -sSL https://get.haskellstack.org/ | sh
|
|
||||||
- stack upgrade
|
|
||||||
- stack --version
|
|
||||||
# install rust
|
|
||||||
- curl https://sh.rustup.rs -sSf | sh -s -- -y -v
|
|
||||||
# required when sudo: required for the Ruby petstore tests
|
|
||||||
- gem install bundler
|
|
||||||
- npm install -g typescript
|
|
||||||
- npm install -g npm
|
|
||||||
- npm install -g elm
|
|
||||||
- npm config set registry http://registry.npmjs.org/
|
|
||||||
# set python 3.6.3 as default
|
|
||||||
- source ~/virtualenv/python3.6/bin/activate
|
|
||||||
# to run petstore server locally via docker
|
# to run petstore server locally via docker
|
||||||
- docker pull swaggerapi/petstore
|
- docker pull swaggerapi/petstore
|
||||||
- docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
|
- docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
|
||||||
- docker ps -a
|
- docker ps -a
|
||||||
# Add bats test framework and cURL for Bash script integration tests
|
# Add bats test framework and cURL for Bash script integration tests
|
||||||
- sudo add-apt-repository ppa:duggan/bats --yes
|
|
||||||
- sudo apt-get update -qq
|
|
||||||
- sudo apt-get install -qq bats
|
|
||||||
- sudo apt-get install -qq curl
|
|
||||||
# install perl module
|
# install perl module
|
||||||
#- cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
|
#- cpanm --local-lib=~/perl5 local::lib && eval $(perl -I ~/perl5/lib/perl5/ -Mlocal::lib)
|
||||||
#- cpanm Test::Exception Test::More Log::Any LWP::UserAgent JSON URI:Query Module::Runtime DateTime Module::Find Moose::Role
|
#- cpanm Test::Exception Test::More Log::Any LWP::UserAgent JSON URI:Query Module::Runtime DateTime Module::Find Moose::Role
|
||||||
@ -93,41 +77,20 @@ install:
|
|||||||
|
|
||||||
script:
|
script:
|
||||||
# fail fast
|
# fail fast
|
||||||
- set -e
|
- set -ev
|
||||||
# fail if templates/generators contain carriage return '\r'
|
# fail if templates/generators contain carriage return '\r'
|
||||||
- /bin/bash ./bin/utils/detect_carriage_return.sh
|
- /bin/bash ./bin/utils/detect_carriage_return.sh
|
||||||
# fail if generators contain merge conflicts
|
# fail if generators contain merge conflicts
|
||||||
- /bin/bash ./bin/utils/detect_merge_conflict.sh
|
- /bin/bash ./bin/utils/detect_merge_conflict.sh
|
||||||
# fail if generators contain tab '\t'
|
# fail if generators contain tab '\t'
|
||||||
- /bin/bash ./bin/utils/detect_tab_in_java_class.sh
|
- /bin/bash ./bin/utils/detect_tab_in_java_class.sh
|
||||||
# run integration tests defined in maven pom.xml
|
- mvn verify
|
||||||
- mvn --quiet clean install
|
|
||||||
- mvn --quiet verify -Psamples
|
|
||||||
after_success:
|
after_success:
|
||||||
# push to maven repo
|
|
||||||
- if [ $SONATYPE_USERNAME ] && [ -z $TRAVIS_TAG ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
|
|
||||||
if [ "$TRAVIS_BRANCH" = "master" ]; then
|
|
||||||
mvn clean deploy -DskipTests=true -B -U -P release --settings CI/settings.xml;
|
|
||||||
echo "Finished mvn clean deploy for $TRAVIS_BRANCH";
|
|
||||||
pushd .;
|
|
||||||
cd modules/openapi-generator-gradle-plugin;
|
|
||||||
./gradlew -Psigning.keyId="$SIGNING_KEY" -Psigning.password="$SIGNING_PASSPHRASE" -Psigning.secretKeyRingFile="${TRAVIS_BUILD_DIR}/sec.gpg" -PossrhUsername="${SONATYPE_USERNAME}" -PossrhPassword="${SONATYPE_PASSWORD}" uploadArchives --no-daemon;
|
|
||||||
echo "Finished ./gradlew uploadArchives";
|
|
||||||
popd;
|
|
||||||
elif ([ "$TRAVIS_BRANCH" == "3.1.x" ] || [ "$TRAVIS_BRANCH" == "4.0.x" ]) ; then
|
|
||||||
mvn clean deploy --settings CI/settings.xml;
|
|
||||||
echo "Finished mvn clean deploy for $TRAVIS_BRANCH";
|
|
||||||
pushd .;
|
|
||||||
cd modules/openapi-generator-gradle-plugin;
|
|
||||||
./gradlew -PossrhUsername="${SONATYPE_USERNAME}" -PossrhPassword="${SONATYPE_PASSWORD}" uploadArchives --no-daemon;
|
|
||||||
echo "Finished ./gradlew uploadArchives";
|
|
||||||
popd;
|
|
||||||
fi;
|
|
||||||
fi;
|
|
||||||
## docker build and push images to DockerHub (openapi-generator-online, openapi-generator-cli)
|
## docker build and push images to DockerHub (openapi-generator-online, openapi-generator-cli)
|
||||||
|
- set -ev
|
||||||
|
- read -r MVN_VERSION_FOR_DOCKER_TAG < target/ci/version-for-docker-tag.txt
|
||||||
|
- echo "Tag for Docker derived from maven version -> $MVN_VERSION_FOR_DOCKER_TAG"; sleep 5;
|
||||||
- if [ $DOCKER_HUB_USERNAME ]; then
|
- if [ $DOCKER_HUB_USERNAME ]; then
|
||||||
read -r MVN_VERSION_FOR_DOCKER_TAG < target/ci/version-for-docker-tag.txt;
|
|
||||||
echo "Tag for Docker derived from maven version -> $MVN_VERSION_FOR_DOCKER_TAG";
|
|
||||||
echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin;
|
echo "$DOCKER_HUB_PASSWORD" | docker login --username=$DOCKER_HUB_USERNAME --password-stdin;
|
||||||
if [ ! -z "$TRAVIS_TAG" ]; then
|
if [ ! -z "$TRAVIS_TAG" ]; then
|
||||||
docker build -t $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG -t $DOCKER_GENERATOR_IMAGE_NAME:$MVN_VERSION_FOR_DOCKER_TAG ./modules/openapi-generator-online;
|
docker build -t $DOCKER_GENERATOR_IMAGE_NAME:$TRAVIS_TAG -t $DOCKER_GENERATOR_IMAGE_NAME:$MVN_VERSION_FOR_DOCKER_TAG ./modules/openapi-generator-online;
|
||||||
@ -139,12 +102,13 @@ after_success:
|
|||||||
docker build -t $DOCKER_GENERATOR_IMAGE_NAME:$MVN_VERSION_FOR_DOCKER_TAG ./modules/openapi-generator-online;
|
docker build -t $DOCKER_GENERATOR_IMAGE_NAME:$MVN_VERSION_FOR_DOCKER_TAG ./modules/openapi-generator-online;
|
||||||
docker build -t $DOCKER_GENERATOR_IMAGE_NAME:$MVN_VERSION_FOR_DOCKER_TAG ./modules/openapi-generator-cli;
|
docker build -t $DOCKER_GENERATOR_IMAGE_NAME:$MVN_VERSION_FOR_DOCKER_TAG ./modules/openapi-generator-cli;
|
||||||
fi;
|
fi;
|
||||||
if [ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" == "master" ] || [ "$TRAVIS_BRANCH" == "3.1.x" ] || [ "$TRAVIS_BRANCH" == "4.0.x" ]; then
|
if [ "$TRAVIS_PULL_REQUEST" == "false" ] && ([ ! -z "$TRAVIS_TAG" ] || [ "$TRAVIS_BRANCH" == "master" ] || [ "$TRAVIS_BRANCH" == "3.1.x" ] || [ "$TRAVIS_BRANCH" == "4.0.x" ]); then
|
||||||
docker push $DOCKER_GENERATOR_IMAGE_NAME;
|
docker push $DOCKER_GENERATOR_IMAGE_NAME;
|
||||||
echo "Pushed to $DOCKER_GENERATOR_IMAGE_NAME";
|
echo "Pushed to $DOCKER_GENERATOR_IMAGE_NAME";
|
||||||
docker push $DOCKER_CODEGEN_CLI_IMAGE_NAME;
|
docker push $DOCKER_CODEGEN_CLI_IMAGE_NAME;
|
||||||
echo "Pushed to $DOCKER_CODEGEN_CLI_IMAGE_NAME";
|
echo "Pushed to $DOCKER_CODEGEN_CLI_IMAGE_NAME";
|
||||||
fi;
|
fi;
|
||||||
fi;
|
fi;
|
||||||
|
sleep 5;
|
||||||
env:
|
env:
|
||||||
- DOCKER_GENERATOR_IMAGE_NAME=openapitools/openapi-generator-online DOCKER_CODEGEN_CLI_IMAGE_NAME=openapitools/openapi-generator-cli NODE_ENV=test
|
- DOCKER_GENERATOR_IMAGE_NAME=openapitools/openapi-generator-online DOCKER_CODEGEN_CLI_IMAGE_NAME=openapitools/openapi-generator-cli NODE_ENV=test
|
||||||
|
4
pom.xml
4
pom.xml
@ -120,12 +120,12 @@
|
|||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<id>copy-resources</id>
|
<id>copy-resources</id>
|
||||||
<phase>package</phase>
|
<phase>process-resources</phase>
|
||||||
<goals>
|
<goals>
|
||||||
<goal>copy-resources</goal>
|
<goal>copy-resources</goal>
|
||||||
</goals>
|
</goals>
|
||||||
<configuration>
|
<configuration>
|
||||||
<outputDirectory>${project.build.directory}/</outputDirectory>
|
<outputDirectory>${project.build.directory}/ci</outputDirectory>
|
||||||
<resources>
|
<resources>
|
||||||
<resource>
|
<resource>
|
||||||
<directory>${project.basedir}/CI/resources</directory>
|
<directory>${project.basedir}/CI/resources</directory>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user