inexorgame-obsolete / deprecated-cube-engine-inexor

UNMAINTAINED: Please have a look at the vulkan-renderer
https://inexor.org
zlib License
11 stars 1 forks source link

Containerize CI, Conan packages building triggering and more... #468

Closed Croydon closed 6 years ago

Croydon commented 6 years ago

DON'T EVEN DARE TO MERGE THIS IF YOU ARE NOT ME

Using Docker in our CI has several advantages, including but not limited to:

Things I need to do before(?) merging:

Things I would like to do at some point after merging this:

This is not perfect yet but already waaaaay better than the currect setup, so let's finally merge this.

PS: Sorry for typos and gramma, it's late 😄

aschaeffer commented 6 years ago

How do I test it?

Fohlen commented 6 years ago

Noting down that https://github.com/Cleafy/sxkdvm will allow OSX to be run via Docker as well!

Croydon commented 6 years ago

How do I test it?

As I said it is complicated as hell right now, which I want to simplify in future pull requests. You would need to do

sudo docker pull inexorgame/ci-docker:gcc070clang040 (for gcc 7 or clang)

then go to the root of the git repo and execute:

sudo docker run -v $(pwd)':'/inexor --net=host -it inexorgame/ci-docker':'${docker_tag} /inexor/${RELATIVE_PATH}tool/travis.sh target_script /${RELATIVE_PATH} ${TARGET} ${CONAN_COMPILER} ${CONAN_COMPILER_VERSION} ${CMAKE_CC} ${CMAKE_CXX} ${TRAVIS_COMMIT} ${TRAVIS_BRANCH} ${TRAVIS_JOB_NUMBER} ${NIGHTLY} ${NIGHTLY_USER} ${NIGHTLY_PASSWORD} ${FTP_DOMAIN} ${TRAVIS_TAG} ${TRAVIS_PULL_REQUEST} ${TRAVIS_REPO_SLUG}

and place a valid value for every single parameter.

So..yeah... I will simplify that 😄

Noting down that https://github.com/Cleafy/sxkdvm will allow OSX to be run via Docker as well!

I highly doubt that this is legal.. macOS is not free to get, so this is maybe, just maybe legal when you already run macOS and have a license by buying a mac device.

For macOS CI we should just use plain Travis.

Croydon commented 6 years ago

@a-teammate @aschaeffer I want to merge this tomorrow finally. It's stable enough to mass compile + test our conan packages which is good enough for a first step.

Please have a general look and approve :P

Croydon commented 6 years ago

@a-teammate Please have a second look

Croydon commented 6 years ago

AppVeyor fails for this pull request, because some depedencies need to get rebuild which only happens on push to master.