Cocos2dx with GitLab-CI

Cocos2dx with GitLab-CI
0.0 0

#1

I want to integrate GitLab-CI (Continuous Integration Feature )
But has no idea how to start . @slackmoehrle @stevetranby
Please Help Me .


#2

I don’t use this


#3

What are other options are available for CI which can i use ?


#4

Travis or Jenkins are also options


#5

I’d look at a PR for the cocos2d-x official jenkins/travis.
https://github.com/cocos2d/cocos2d-x/pull/17487 .
https://travis-ci.org/cocos2d/cocos2d-x/builds/210035354 .

The official configuration is here:
https://github.com/cocos2d/cocos2d-x/blob/v3/.travis.yml .

I actually don’t know much about them, I’ve never bothered to set one up.

Good luck.


#6

Hi @nbesshaposhnikov

I saw your Project on gitlab Piktomir . Plz guide me how to do it for Android Platform .Thanks


#7

Actually :smiley: best way to compile your project under Continuos integration is to use such commands:

cocos build -p IOS -m release

it is super easy no need to dig into xcode parameters :slight_smile:

For me best CI is Teamcity - where u running shell script from to compile and upload project

For example my script to compile project:

#!/bin/bash
# 
 
echo "##teamcity[progressMessage 'Building ${PRODUCT_NAME} IPA']"
# compile
echo "##teamcity[compilationStarted compiler='COCOS BUILD IPA']"
#xcodebuild -workspace RowMotion.xcworkspace -scheme RowMotion -sdk iphoneos8.1 -configuration Release build archive
#cocos compile -p IOS -j 8 -m release -t "${BUILD_ARCH_NAME}"

cocos compile -p IOS -j 8 -m release --sign-identity "iPhone Developer: Blabla (8KRJDIHFIUH)" -t "${BUILD_ARCH_NAME}"
 
echo "##teamcity[compilationFinished compiler='COCOS BUILD IPA']"



echo "##teamcity[progressMessage ' Ready to Upload IPA to HockeyApp']"

and script to send build:

#!/bin/bash
# 
 

if [ "${teamcity_build_branch}" = "<default>" ]; then
teamcity_build_branch2=${teamcity_def_branch}
else
teamcity_build_branch2=${teamcity_build_branch}
fi


if [ -n "${IPA_CFG_NAME}" ]; then
    IPA_BUILD_NAME="${IPA_CFG_NAME}"
else
    IPA_BUILD_NAME="${BUILD_ARCH_NAME}"
fi

RELEASE_NOTES=" Build: #$build_number Branch: $teamcity_build_branch2 "
RELEASE_NOTES+=`git log -1 "${teamcity_build_branch2}"  `
BUILD_NAME="${IPA_BUILD_NAME}.ipa"
BUILD_ARCH_DSYM="${IPA_BUILD_NAME}.app.dSYM"

zip -r "bin/release/ios/${BUILD_ARCH_DSYM}.zip" "bin/release/ios/${BUILD_ARCH_DSYM}"

echo "BUILD NAME: $BUILD_NAME"
echo "DSYM NAME: $BUILD_ARCH_DSYM"


  curl \
  -F "status=2" \
  -F "notify=1" \
  -F "notes=$RELEASE_NOTES" \
  -F "notes_type=0" \
  -F "ipa=@bin/release/ios/${BUILD_NAME}" \
  -F "dsym=@bin/release/ios/${BUILD_ARCH_DSYM}.zip" \
  -H "X-HockeyAppToken: sdijhfdsiuhfiusdhfiushf" \
  https://rink.hockeyapp.net/api/2/apps/upload




token="asdasdadasd"

curl https://upload.diawi.com/ -F token="${token}" \
-F file="@bin/release/ios/${BUILD_NAME}"  \
-F callback_emails='myemail@gmail.com' \
-F comment="BUILD: ${BUILD_NAME} NOTES: ${RELEASE_NOTES}" \
-F find_by_udid=0 \
-F wall_of_apps=0 \
-F password='brrr' \
-F installation_notifications=1

#8

Thanks @energyy Hi i saw and play your game Summer sports , soccer . It’s nice graphics and game play .

I’ll try TeamCity .