Forums WoW Modding Support Archives Azerothcore Discord Archives [DiscordArchive] Hey folks! I'm new to AzerothCore, but I wanted to play around with setting up a development / deplo

[DiscordArchive] Hey folks! I'm new to AzerothCore, but I wanted to play around with setting up a development / deplo

[DiscordArchive] Hey folks! I'm new to AzerothCore, but I wanted to play around with setting up a development / deplo

rektbyfaith
Administrator
0
05-10-2022, 03:42 PM
#1
Archived author: Jim • Posted: 2022-05-10T15:42:10.159000+00:00
Original source

Hey folks! I'm new to AzerothCore, but I wanted to play around with setting up a development / deployment pipeline that follows best practices and leans heavily on automation and CI/CD. I've read through the Wiki, forked the main repo, reconfigured the GitHub actions files to build and push images to my own Docker Hub account, and then stood up these images in a compose file based on https://github.com/azerothcore/acore-docker. I assume I'm on the right track so far.

I have a few questions about where I go next:
- If I wanted multiple environments (e.g. production, public-test, private-test), should this be accomplished by designating git branches for these, having separate CI pipelines, and building these branches to their own Docker image tags?
- Currently when I push new docker images, I think I just need to run `docker-compose pull`, `docker-compose up ac-db-import`, `docker-compose up -d` on the environment I want to update. Is there an established pattern for automating this process?
- If I want to add custom behaviour, it seems I should use modules if at all possible. Is it preferred to commit the module code in to the `modules` directory of the core project, rather than using git submodules? (Assuming I'm not publishing these modules, if I were I would make a separate repo and add them as submodules?)
- If making changes to core outside of a module, should I be following the same process as when contributing to upstream? i.e. add change scripts to `pending_db_world` and let CI process these, running the `import-pending` workflow on PRs to the test branches? And then just PR the changes committed by the bot to `master` when I'm ready to release to production?
rektbyfaith
05-10-2022, 03:42 PM #1

Archived author: Jim • Posted: 2022-05-10T15:42:10.159000+00:00
Original source

Hey folks! I'm new to AzerothCore, but I wanted to play around with setting up a development / deployment pipeline that follows best practices and leans heavily on automation and CI/CD. I've read through the Wiki, forked the main repo, reconfigured the GitHub actions files to build and push images to my own Docker Hub account, and then stood up these images in a compose file based on https://github.com/azerothcore/acore-docker. I assume I'm on the right track so far.

I have a few questions about where I go next:
- If I wanted multiple environments (e.g. production, public-test, private-test), should this be accomplished by designating git branches for these, having separate CI pipelines, and building these branches to their own Docker image tags?
- Currently when I push new docker images, I think I just need to run `docker-compose pull`, `docker-compose up ac-db-import`, `docker-compose up -d` on the environment I want to update. Is there an established pattern for automating this process?
- If I want to add custom behaviour, it seems I should use modules if at all possible. Is it preferred to commit the module code in to the `modules` directory of the core project, rather than using git submodules? (Assuming I'm not publishing these modules, if I were I would make a separate repo and add them as submodules?)
- If making changes to core outside of a module, should I be following the same process as when contributing to upstream? i.e. add change scripts to `pending_db_world` and let CI process these, running the `import-pending` workflow on PRs to the test branches? And then just PR the changes committed by the bot to `master` when I'm ready to release to production?

Recently Browsing
 1 Guest(s)
Recently Browsing
 1 Guest(s)