Pipelines without stage
I have a .gitlab-ci.yml with many stages:
stages:
- build
- test
- publish
- octopus
- int_test
gitlab.com/ci/lint syntax is correct and show Testing job after stage "octopus" .
Parameter Value
**Build Job - build_docker**
docker login -u $registry_artifactory_user -p $registry_artifactory_password $ART_REGISTRY
docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t $CONTAINER_TEST_IMAGE .
docker push $CONTAINER_TEST_IMAGE
Tag list: docker
Only policy: refs, master
Except policy:
Environment:
When: on_success
**Build Job - build_app**
export alfa_backend_solution_path=$(ls src/*.sln)
apt-get update;apt-get install -y xmlstarlet
value=$(<$alfa_backend_solution_version_path)
DIR="./src/"
VERSION=$value
if [ -n "$alfa_nugetconfig" ]; then echo "${alfa_nugetconfig}" | tee ./src/NuGet.config; else echo "alfa_nugetconfig is unset, use NuGet.config from src"; fi
if [ "$CI_COMMIT_REF_SLUG" != "master" ]; then export VERSION=$value-beta${CI_JOB_ID}; fi
for FILE in $(find ${DIR} -type f -name "*.csproj") ; do echo "Processing: $FILE ..."; xmlstarlet ed -d "/Project/PropertyGroup/Version" $FILE > _tmp.csproj; xmlstarlet ed --insert "/Project/PropertyGroup/TargetFramework" -t elem -n Version -v $VERSION _tmp.csproj > $FILE ; rm _tmp.csproj ; done
dotnet restore $alfa_backend_solution_path
dotnet build $alfa_backend_solution_path -c Release -o ./Builds/
dotnet publish $alfa_backend_solution_path -c Release -o ./Publish/
Tag list: docker, dotnet
Only policy:
Except policy:
Environment:
When: on_success
**Test Job - test_dotnet**
export tests=$(cd src;ls -d *.Tests)
for i in $tests; do echo -e "Files: ${i}\n";dotnet vstest ./src/$i/Publish/$i.dll; done
Tag list: docker, dotnet
Only policy:
Except policy:
Environment:
When: on_success
Publish Job - publish_docker_image
docker login -u $registry_artifactory_user -p $registry_artifactory_password $ART_REGISTRY
docker tag $CONTAINER_TEST_IMAGE $CONTAINER_RELEASE_IMAGE
docker push $CONTAINER_RELEASE_IMAGE
Tag list: docker
Only policy: refs, tags
Except policy:
Environment:
When: on_success
**Publish Job - publish_host**
export current_version=$(<./src/solution.version)
export contractver=$(echo $current_version | awk -F"." {'print $3'})
if [[ $contractver > 0 ]] ; then exit 0; fi
for i in src/*/Builds/*.nupkg; do dotnet nuget push $i -k $alfa_artifactory_nuget_worker_name:$alfa_artifactory_nuget_worker_password -s $alfa_artifactory_nuget_backend_full; done
Tag list: docker, dotnet
Only policy: refs, master
Except policy:
Environment:
When: on_success
**Publish Job - publish_host_branch**
export current_version=$(<./src/solution.version)
export contractver=$(echo $current_version | awk -F"." {'print $3'})
if [[ $contractver > 0 ]] ; then exit 0; fi
for i in src/*/Builds/*.nupkg; do dotnet nuget push $i -k $alfa_artifactory_nuget_worker_name:$alfa_artifactory_nuget_worker_password -s $alfa_artifactory_nuget_backend_full; done
Tag list: docker, dotnet
Only policy: refs, branches
Except policy: refs, master
Environment:
When: manual Allowed to fail
**Octopus Job - octopus_deploy**
export current_version=$(<./src/solution.version)
export service_name=$(ls ./src/*.sln | awk -F"/" {'print $3'} | awk -F"." {'print $1"."$2"."$3'})
octo pack --id $service_name.Host --version $current_version --basePath ./src/*.Host/Publish/ --outFolder /var/tmp/ --verbose --overwrite
octo push --package=/var/tmp/$service_name.Host.$current_version.nupkg --server=$alfa_octopus_url --apiKey=$alfa_octopus_nuget_apikey --debug
Tag list: docker, dotnet
Only policy: refs, master
Except policy:
Environment:
When: on_success
**Int_test Job - runtest_TestGetBalance**
cd $TEST_FOLDER
python $TEST_NAME.py
Tag list:
Only policy: refs, master
Except policy: refs, branches
Environment:
When: manual Allowed to fail
**Int_test Job - runtest_Test_Get_CardId**
cd $TEST_FOLDER
python $TEST_NAME.py
Tag list:
Only policy: refs, master
Except policy: refs, branches
Environment:
When: manual Allowed to fail
**Int_test Job - runtest_TestAddCustomerData**
cd $TEST_FOLDER
python $TEST_NAME.py
Tag list:
Only policy: refs, master
Except policy: refs, branches
Environment:
When: manual Allowed to fail
**Int_test Job - runtest_TestGetInternalToken**
cd $TEST_FOLDER
python $TEST_NAME.py
Tag list:
Only policy: refs, master
Except policy: refs, branches
Environment:
When: manual Allowed to fail
**Int_test Job - runtest_TestInvalidPhone**
cd $TEST_FOLDER
python $TEST_NAME.py
Tag list:
Only policy: refs, master
Except policy: refs, branches
Environment:
When: manual Allowed to fail
**Int_test Job - runtest_TestValidPhone**
cd $TEST_FOLDER
python $TEST_NAME.py
Tag list:
Only policy: refs, master
Except policy: refs, branches
Environment:
When: manual Allowed to fail
but in CI Pipelines:
without test jobs. How i can fix it?

