{"id":15838030,"url":"https://github.com/aldy505/continuous-integration-images","last_synced_at":"2026-05-05T06:34:30.492Z","repository":{"id":128669897,"uuid":"579033390","full_name":"aldy505/continuous-integration-images","owner":"aldy505","description":"Docker images ready for your continuous integration pipeline","archived":false,"fork":false,"pushed_at":"2024-11-22T06:44:15.000Z","size":32,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-22T07:24:04.616Z","etag":null,"topics":["continuous-integration","docker-image"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aldy505.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"ko_fi":"aldy505","github":"aldy505"}},"created_at":"2022-12-16T13:47:47.000Z","updated_at":"2024-11-22T06:44:19.000Z","dependencies_parsed_at":"2023-12-19T04:11:44.232Z","dependency_job_id":null,"html_url":"https://github.com/aldy505/continuous-integration-images","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aldy505%2Fcontinuous-integration-images","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aldy505%2Fcontinuous-integration-images/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aldy505%2Fcontinuous-integration-images/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aldy505%2Fcontinuous-integration-images/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aldy505","download_url":"https://codeload.github.com/aldy505/continuous-integration-images/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229689082,"owners_count":18107972,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["continuous-integration","docker-image"],"created_at":"2024-10-05T16:00:26.653Z","updated_at":"2026-05-05T06:34:25.472Z","avatar_url":"https://github.com/aldy505.png","language":"Shell","funding_links":["https://ko-fi.com/aldy505","https://github.com/sponsors/aldy505"],"categories":[],"sub_categories":[],"readme":"# Continuous Integration Images\n\nThe story begins as I moved to another company that stores their repository on Github.\nThus, the CI/CD platform will be Github Actions. Well, technically you can use other\nCI/CD platforms such as Travis or Circle CI, but Github Actions has been the default\nand the go-to of CI/CD runner in 2022, so why not. It's a good platform anyway.\n\nYou can easily run integration tests on your application to execute things directly\nto anything (database, message broker, even Hashicorp stuff) if they provide their\nDocker image version of the app. The configuration will be as simple as:\n\n```yaml\n  logger:\n    name: Some Go Application\n    runs-on: ubuntu-latest\n    container: golang:1.18\n    services:\n      db:\n        image: influxdb:2.3.0\n        env:\n          DOCKER_INFLUXDB_INIT_MODE: setup\n          DOCKER_INFLUXDB_INIT_USERNAME: root\n          DOCKER_INFLUXDB_INIT_PASSWORD: password\n          DOCKER_INFLUXDB_INIT_ORG: organization\n          DOCKER_INFLUXDB_INIT_BUCKET: public\n          DOCKER_INFLUXDB_INIT_ADMIN_TOKEN: random_admin_token_that_is_secret\n        options: \u003e-\n          --health-cmd \"influx ping\"\n          --health-interval 30s\n          --health-timeout 10s\n          --health-retries 5\n          --health-start-period 30s\n\n    steps:\n      - name: Checkout repository\n        uses: actions/checkout@v2\n      - name: Build test\n        run: go build .\n      - name: Run test\n        run: go test -v -race -coverprofile=coverage.out -covermode=atomic\n        env:\n          ACCESS_TOKEN: testing\n          INFLUX_URL: http://db:8086/\n          INFLUX_ORG: organization\n          INFLUX_TOKEN: random_admin_token_that_is_secret\n```\n\nThe problem with that configuration is that, when you have something like MinIO \nthat requires some command to be executed. So your `docker run` became:\n`docker run minio server /data`. The problem with this one is that you can't \ngive additional command to run on Github Actions container configuration.\n\nThe simple alternative that won't mess with your head is to just create a new image\nthat is by default sets those additional commands.\n\nThis also comes with a cost: maintaining it.\n\nThis repository aims to fix just that. I can maintain the version and everyone will\nbe happy because everything is here, alongside with the version. I also don't need\nto authenticate to Docker Hub, because Github Packages already did that for me.\n\n## How to use the packages?\n\nSee the **[Packages](https://github.com/users/aldy505/packages?repo_name=continuous-integration-images)** \nsection on the right of the repository, click it.\n\nThen just use it, without any settings. If there are authentication,\nthere should be a note on the `README.md` of each directory.\n\n## I want to add another package, yet I'm also lazy on maintaining it.\n\nSure, submit a PR that supply a `Dockerfile` and a\n[Github Action workflow file](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions) \n(inside the `.github/workflows` directory). I'll take a look and merge it.\n\n## License\n\n```\nMIT License\n\nCopyright (c) 2022 Reinaldy Rafli \u003caldy505@proton.me\u003e\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n```\n\nSee [LICENSE](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faldy505%2Fcontinuous-integration-images","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faldy505%2Fcontinuous-integration-images","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faldy505%2Fcontinuous-integration-images/lists"}