Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for docker builds on master branch #15

Closed
wants to merge 2 commits into from

Conversation

DEVoytas
Copy link
Contributor

This is based on @LynxAbraxas 's PR #13
with few adjustments that makes it work on my system.
This is only build stage for now, since running requires external data files (original CD data).

@LynxAbraxas
Copy link
Contributor

Thanks for looking into docker builds with travis. I think that you can use my DF as is for travis; docker on your system might be a bit out of date, see also my comments on --chown at: #13 (comment). If you just copy over the final Dockerfile from my PR, you loose all the records/history on trial-and-error experience, which might be helpful to avoid going through those again in the future. How about first merging #13 and then rebase your changes/removes onto that?
Also, even if the .gitlab-ci.yml has no meaning to GH, keeping it would be great for forks pushed to GL to make use of building a playable docker image for private use, also see my comments at: #13 (comment).

@DEVoytas
Copy link
Contributor Author

docker on your system might be a bit out of date

Yes, you are exactly right! It was outdated. After updating, COPY --chown and build stage naming works as expected. Thanks!

@DEVoytas
Copy link
Contributor Author

How about first merging #13 and then rebase your changes/removes onto that?

Sounds like a good idea, but I have two concerns:

  1. I do not want make any decisions about what PR to merge, this should be up to the maintainer. And I think @ptitSeb agreed to temporary role at the beginning of November so very soon.
  2. I am of the opinion that no commit that fails any checks (in our case only travis at the moment) should be merged to master branch. So maybe it would be better idea to make this change on top of your PR and then merge the result (that passes travis check) to master. What do you think? Still final decision is up to maintainer IMO :)

This commit adds Dockerfile and docker_build.sh script for building ctp2
inside docker container.
@DEVoytas
Copy link
Contributor Author

DEVoytas commented Nov 1, 2018

travis-ci check for docker build is currently failing. Created issue to track/investigate it: #21

@LynxAbraxas
Copy link
Contributor

Included in #13 and its squashed version #23, which both succeed on travis.

@DEVoytas
Copy link
Contributor Author

DEVoytas commented Dec 4, 2018

Closing, as this is now obsoleted by #23 and #43

@DEVoytas DEVoytas closed this Dec 4, 2018
LynxAbraxas added a commit to LynxAbraxas/civctp2 that referenced this pull request Dec 28, 2019
…tes (sender civ == receiver civ)", causes "No such object":

This reverts commit fe3b57c.

Messagebox(GameObj.cpp Error): No such object

Continue?

(ctp2:385): Gtk-CRITICAL **: 18:45:55.493: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.495: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.496: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.498: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.506: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

Thread 1 "ctp2" received signal SIGSEGV, Segmentation fault.
0x00005555557902ba in UnitData::GetOwner() const ()
(gdb) bt
#0  0x00005555557902ba in UnitData::GetOwner() const ()
civctp2#1  0x00005555560917d4 in Unit::GetOwner() const ()
civctp2#2  0x000055555608c8b0 in TradeRoute::RemoveAllReferences(CAUSE_KILL_TRADE_ROUTE) ()
civctp2#3  0x000055555608c658 in TradeRoute::KillRoute(CAUSE_KILL_TRADE_ROUTE) ()
civctp2#4  0x000055555578fe8e in TradeRoute::Kill(CAUSE_KILL_TRADE_ROUTE) ()
civctp2#5  0x000055555600931e in CityData::~CityData() ()
civctp2#6  0x0000555556009504 in CityData::~CityData() ()
civctp2#7  0x00005555560985b8 in UnitData::~UnitData() ()
civctp2#8  0x000055555609869c in UnitData::~UnitData() ()
civctp2#9  0x0000555556043a05 in GameObj_Delete(GameObj**, unsigned int) ()
civctp2#10 0x0000555556052891 in ObjPool::Del(ID const&) ()
civctp2#11 0x00005555560912ee in Unit::RemoveAllReferences(CAUSE_REMOVE_ARMY, int) ()
civctp2#12 0x0000555556090ae2 in Unit::KillUnit(CAUSE_REMOVE_ARMY, int) ()
civctp2#13 0x00005555558bcfd4 in Unit::Kill(CAUSE_REMOVE_ARMY, int) ()
civctp2#14 0x00005555560179fc in CityData::CityToPark(int) ()
civctp2#15 0x00005555560a0dd2 in UnitData::CityToPark(int) ()
civctp2#16 0x000055555609446f in Unit::CityToPark(int) ()
civctp2#17 0x00005555560c6171 in CreateParkEvent::GEVHookCallback(GAME_EVENT, GameEventArgList*) ()
civctp2#18 0x0000555555fc0500 in GameEventHook::Activate(GameEventArgList*, int, int&) const ()
civctp2#19 0x0000555555fbd9c4 in GameEventManager::ActivateHook(GAME_EVENT, GameEventArgList*, int, int&) ()
civctp2#20 0x0000555555fbff27 in GameEvent::Process() ()
civctp2#21 0x0000555555fbd6b4 in GameEventManager::ProcessHead() ()
civctp2#22 0x0000555555fbd5e3 in GameEventManager::Process() ()
civctp2#23 0x0000555555780f4b in CivApp::Process() ()
civctp2#24 0x0000555555776cec in CivMain(int, char**) ()
civctp2#25 0x0000555555776889 in main ()

# Please enter the commit message for your changes. Lines starting
# with '#' will be kept; you may remove them yourself if you want to.
# An empty message aborts the commit.
#
# Date:      Sat Dec 28 19:51:22 2019 +0100
#
# On branch master4testing
# Your branch is ahead of 'origin/master4testing' by 1 commit.
#   (use "git push" to publish your local commits)
#
# Changes to be committed:
#	modified:   ctp2_code/gs/gameobj/TradeRoute.cpp
#
LynxAbraxas added a commit to LynxAbraxas/civctp2 that referenced this pull request Dec 29, 2019
…tes (sender civ == receiver civ)", causes "No such object":

This reverts commit fe3b57c.

Messagebox(GameObj.cpp Error): No such object

Continue?

(ctp2:385): Gtk-CRITICAL **: 18:45:55.493: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.495: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.496: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.498: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

(ctp2:385): Gtk-CRITICAL **: 18:45:55.506: IA__gtk_main_quit: assertion 'main_loops != NULL' failed

Thread 1 "ctp2" received signal SIGSEGV, Segmentation fault.
0x00005555557902ba in UnitData::GetOwner() const ()
(gdb) bt
#0  0x00005555557902ba in UnitData::GetOwner() const ()
civctp2#1  0x00005555560917d4 in Unit::GetOwner() const ()
civctp2#2  0x000055555608c8b0 in TradeRoute::RemoveAllReferences(CAUSE_KILL_TRADE_ROUTE) ()
civctp2#3  0x000055555608c658 in TradeRoute::KillRoute(CAUSE_KILL_TRADE_ROUTE) ()
civctp2#4  0x000055555578fe8e in TradeRoute::Kill(CAUSE_KILL_TRADE_ROUTE) ()
civctp2#5  0x000055555600931e in CityData::~CityData() ()
civctp2#6  0x0000555556009504 in CityData::~CityData() ()
civctp2#7  0x00005555560985b8 in UnitData::~UnitData() ()
civctp2#8  0x000055555609869c in UnitData::~UnitData() ()
civctp2#9  0x0000555556043a05 in GameObj_Delete(GameObj**, unsigned int) ()
civctp2#10 0x0000555556052891 in ObjPool::Del(ID const&) ()
civctp2#11 0x00005555560912ee in Unit::RemoveAllReferences(CAUSE_REMOVE_ARMY, int) ()
civctp2#12 0x0000555556090ae2 in Unit::KillUnit(CAUSE_REMOVE_ARMY, int) ()
civctp2#13 0x00005555558bcfd4 in Unit::Kill(CAUSE_REMOVE_ARMY, int) ()
civctp2#14 0x00005555560179fc in CityData::CityToPark(int) ()
civctp2#15 0x00005555560a0dd2 in UnitData::CityToPark(int) ()
civctp2#16 0x000055555609446f in Unit::CityToPark(int) ()
civctp2#17 0x00005555560c6171 in CreateParkEvent::GEVHookCallback(GAME_EVENT, GameEventArgList*) ()
civctp2#18 0x0000555555fc0500 in GameEventHook::Activate(GameEventArgList*, int, int&) const ()
civctp2#19 0x0000555555fbd9c4 in GameEventManager::ActivateHook(GAME_EVENT, GameEventArgList*, int, int&) ()
civctp2#20 0x0000555555fbff27 in GameEvent::Process() ()
civctp2#21 0x0000555555fbd6b4 in GameEventManager::ProcessHead() ()
civctp2#22 0x0000555555fbd5e3 in GameEventManager::Process() ()
civctp2#23 0x0000555555780f4b in CivApp::Process() ()
civctp2#24 0x0000555555776cec in CivMain(int, char**) ()
civctp2#25 0x0000555555776889 in main ()
LynxAbraxas added a commit to LynxAbraxas/civctp2 that referenced this pull request Dec 30, 2019
…ct":

This reverts commit 81ae687.

Thread 1 "ctp2" hit Catchpoint 1 (signal SIGSEGV), 0x0000555555790236 in UnitData::GetOwner (this=0x0) at ../ctp2_code/gs/gameobj/UnitData.h:296
296		PLAYER_INDEX GetOwner () const { return m_owner; };
#0  0x0000555555790236 in UnitData::GetOwner (this=0x0) at ../ctp2_code/gs/gameobj/UnitData.h:296
civctp2#1  0x000055555609176a in Unit::GetOwner (this=0x7fffffffe254) at Unit.cpp:397
civctp2#2  0x000055555608c847 in TradeRoute::RemoveAllReferences (this=0x7fffffffe2b4, cause=CAUSE_KILL_TRADE_ROUTE_CITY_DIED) at TradeRoute.cpp:70
civctp2#3  0x000055555608c5c8 in TradeRoute::KillRoute (this=0x55555f993d5c, cause=CAUSE_KILL_TRADE_ROUTE_CITY_DIED) at TradeRoute.cpp:35
civctp2#4  0x000055555578fe0a in TradeRoute::Kill (this=0x55555f993d5c, cause=CAUSE_KILL_TRADE_ROUTE_CITY_DIED) at ../ctp2_code/gs/gameobj/TradeRoute.h:51
civctp2#5  0x000055555600928e in CityData::~CityData (this=0x55555f9935ac, __in_chrg=<optimized out>) at CityData.cpp:582
civctp2#6  0x0000555556009474 in CityData::~CityData (this=0x55555f9935ac, __in_chrg=<optimized out>) at CityData.cpp:605
civctp2#7  0x000055555609854e in UnitData::~UnitData (this=0x55555f99327c, __in_chrg=<optimized out>) at UnitData.cpp:384
civctp2#8  0x0000555556098632 in UnitData::~UnitData (this=0x55555f99327c, __in_chrg=<optimized out>) at UnitData.cpp:389
civctp2#9  0x0000555556043975 in GameObj_Delete (p=0x55555f74099c, id=268435500) at GameObj.cpp:190
civctp2#10 0x0000555556052801 in ObjPool::Del (this=0x55555f74082c, id=...) at ObjPool.cpp:106
civctp2#11 0x0000555556091284 in Unit::RemoveAllReferences (this=0x7fffffffe474, cause=CAUSE_REMOVE_ARMY_PARKRANGER, killedBy=1) at Unit.cpp:293
civctp2#12 0x0000555556090a78 in Unit::KillUnit (this=0x55555f9936b0, cause=CAUSE_REMOVE_ARMY_PARKRANGER, killedBy=1) at Unit.cpp:126
civctp2#13 0x00005555558bcf50 in Unit::Kill (this=0x55555f9936b0, cause=CAUSE_REMOVE_ARMY_PARKRANGER, killedBy=1) at ../ctp2_code/gs/gameobj/Unit.h:108
civctp2#14 0x000055555601796c in CityData::CityToPark (this=0x55555f9935ac, agressor=1) at CityData.cpp:5981
civctp2#15 0x00005555560a0d68 in UnitData::CityToPark (this=0x55555f99327c, agressor=1) at UnitData.cpp:3191
civctp2#16 0x0000555556094405 in Unit::CityToPark (this=0x7fffffffe5a0, agressor=1) at Unit.cpp:1522
civctp2#17 0x00005555560c6107 in CreateParkEvent::GEVHookCallback (this=0x55555674d980 <s_CreateParkEvent>, gameEventType=GEV_CreatePark, args=0x555582a0543c) at CityEvent.cpp:662
civctp2#18 0x0000555555fc0470 in GameEventHook::Activate (this=0x55555ef016cc, args=0x555582a0543c, startIndex=0, resumeIndex=@0x555582a062bc: 1) at GameEventHook.cpp:254
civctp2#19 0x0000555555fbd934 in GameEventManager::ActivateHook (this=0x55555eee50ac, type=GEV_CreatePark, args=0x555582a0543c, startIndex=-1, resumeIndex=@0x555582a062bc: 1) at GameEventManager.cpp:511
civctp2#20 0x0000555555fbfe97 in GameEvent::Process (this=0x555582a062ac) at GameEvent.cpp:112
civctp2#21 0x0000555555fbd624 in GameEventManager::ProcessHead (this=0x55555eee50ac) at GameEventManager.cpp:440
civctp2#22 0x0000555555fbd553 in GameEventManager::Process (this=0x55555eee50ac) at GameEventManager.cpp:415
civctp2#23 0x0000555555780ec7 in CivApp::Process (this=0x555556caec9c) at ctp/civapp.cpp:2563
civctp2#24 0x0000555555776c68 in CivMain (iCmdShow=2, pSzCmdLine=0x7fffffffecb8) at ctp/civ3_main.cpp:1694
civctp2#25 0x0000555555776805 in main (argc=2, argv=0x7fffffffecb8) at ctp/civ3_main.cpp:1440
LynxAbraxas added a commit to LynxAbraxas/civctp2 that referenced this pull request Dec 30, 2019
…ct":

This reverts commit 81ae687.

Thread 1 "ctp2" hit Catchpoint 1 (signal SIGSEGV), 0x0000555555790236 in UnitData::GetOwner (this=0x0) at ../ctp2_code/gs/gameobj/UnitData.h:296
296		PLAYER_INDEX GetOwner () const { return m_owner; };
#0  0x0000555555790236 in UnitData::GetOwner (this=0x0) at ../ctp2_code/gs/gameobj/UnitData.h:296
civctp2#1  0x000055555609176a in Unit::GetOwner (this=0x7fffffffe254) at Unit.cpp:397
civctp2#2  0x000055555608c847 in TradeRoute::RemoveAllReferences (this=0x7fffffffe2b4, cause=CAUSE_KILL_TRADE_ROUTE_CITY_DIED) at TradeRoute.cpp:70
civctp2#3  0x000055555608c5c8 in TradeRoute::KillRoute (this=0x55555f993d5c, cause=CAUSE_KILL_TRADE_ROUTE_CITY_DIED) at TradeRoute.cpp:35
civctp2#4  0x000055555578fe0a in TradeRoute::Kill (this=0x55555f993d5c, cause=CAUSE_KILL_TRADE_ROUTE_CITY_DIED) at ../ctp2_code/gs/gameobj/TradeRoute.h:51
civctp2#5  0x000055555600928e in CityData::~CityData (this=0x55555f9935ac, __in_chrg=<optimized out>) at CityData.cpp:582
civctp2#6  0x0000555556009474 in CityData::~CityData (this=0x55555f9935ac, __in_chrg=<optimized out>) at CityData.cpp:605
civctp2#7  0x000055555609854e in UnitData::~UnitData (this=0x55555f99327c, __in_chrg=<optimized out>) at UnitData.cpp:384
civctp2#8  0x0000555556098632 in UnitData::~UnitData (this=0x55555f99327c, __in_chrg=<optimized out>) at UnitData.cpp:389
civctp2#9  0x0000555556043975 in GameObj_Delete (p=0x55555f74099c, id=268435500) at GameObj.cpp:190
civctp2#10 0x0000555556052801 in ObjPool::Del (this=0x55555f74082c, id=...) at ObjPool.cpp:106
civctp2#11 0x0000555556091284 in Unit::RemoveAllReferences (this=0x7fffffffe474, cause=CAUSE_REMOVE_ARMY_PARKRANGER, killedBy=1) at Unit.cpp:293
civctp2#12 0x0000555556090a78 in Unit::KillUnit (this=0x55555f9936b0, cause=CAUSE_REMOVE_ARMY_PARKRANGER, killedBy=1) at Unit.cpp:126
civctp2#13 0x00005555558bcf50 in Unit::Kill (this=0x55555f9936b0, cause=CAUSE_REMOVE_ARMY_PARKRANGER, killedBy=1) at ../ctp2_code/gs/gameobj/Unit.h:108
civctp2#14 0x000055555601796c in CityData::CityToPark (this=0x55555f9935ac, agressor=1) at CityData.cpp:5981
civctp2#15 0x00005555560a0d68 in UnitData::CityToPark (this=0x55555f99327c, agressor=1) at UnitData.cpp:3191
civctp2#16 0x0000555556094405 in Unit::CityToPark (this=0x7fffffffe5a0, agressor=1) at Unit.cpp:1522
civctp2#17 0x00005555560c6107 in CreateParkEvent::GEVHookCallback (this=0x55555674d980 <s_CreateParkEvent>, gameEventType=GEV_CreatePark, args=0x555582a0543c) at CityEvent.cpp:662
civctp2#18 0x0000555555fc0470 in GameEventHook::Activate (this=0x55555ef016cc, args=0x555582a0543c, startIndex=0, resumeIndex=@0x555582a062bc: 1) at GameEventHook.cpp:254
civctp2#19 0x0000555555fbd934 in GameEventManager::ActivateHook (this=0x55555eee50ac, type=GEV_CreatePark, args=0x555582a0543c, startIndex=-1, resumeIndex=@0x555582a062bc: 1) at GameEventManager.cpp:511
civctp2#20 0x0000555555fbfe97 in GameEvent::Process (this=0x555582a062ac) at GameEvent.cpp:112
civctp2#21 0x0000555555fbd624 in GameEventManager::ProcessHead (this=0x55555eee50ac) at GameEventManager.cpp:440
civctp2#22 0x0000555555fbd553 in GameEventManager::Process (this=0x55555eee50ac) at GameEventManager.cpp:415
civctp2#23 0x0000555555780ec7 in CivApp::Process (this=0x555556caec9c) at ctp/civapp.cpp:2563
civctp2#24 0x0000555555776c68 in CivMain (iCmdShow=2, pSzCmdLine=0x7fffffffecb8) at ctp/civ3_main.cpp:1694
civctp2#25 0x0000555555776805 in main (argc=2, argv=0x7fffffffecb8) at ctp/civ3_main.cpp:1440
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants