{"id":27004418,"url":"https://github.com/tacc/camino","last_synced_at":"2025-08-21T14:11:24.283Z","repository":{"id":43687412,"uuid":"263434187","full_name":"TACC/Camino","owner":"TACC","description":"Deployment Management repository for CEP Portals","archived":false,"fork":false,"pushed_at":"2025-08-06T16:30:28.000Z","size":132,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-08-06T18:22:07.134Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TACC.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2020-05-12T19:36:28.000Z","updated_at":"2025-05-21T18:14:08.000Z","dependencies_parsed_at":"2023-02-15T03:31:02.313Z","dependency_job_id":"a1c8ee5b-3611-47e9-9bb2-c07193da1e30","html_url":"https://github.com/TACC/Camino","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/TACC/Camino","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCamino","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCamino/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCamino/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCamino/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TACC","download_url":"https://codeload.github.com/TACC/Camino/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TACC%2FCamino/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271493232,"owners_count":24769117,"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","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-04-04T06:16:45.000Z","updated_at":"2025-08-21T14:11:24.252Z","avatar_url":"https://github.com/TACC.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Camino\n\nDependencies:\n- [Docker](https://docs.docker.com/)\n- [Docker Compose](https://docs.docker.com/compose/)\n- [Docker Hub](https://hub.docker.com/orgs/taccwma/repositories)\n- [GNU Make](https://www.gnu.org/software/make/)\n\n### Camino directs and tracks container-based deployments across various environments\n\nA compose file exists for each environment to orchestrate deployments. Each application/service in a compose file can be locked to a specific tag. An image digest can be used to guarantee the correct/expected image is always referenced.\n\nSetup:\nClone the Camino repo to the path `/opt/portal`\n\nAt the root of the cloned project create the env file `.env` and add the environment variables\nthat indicate which docker-compose files should be used. With the env file set, Make will \nload the environment variables and pass them to the compose file.\n\nThe .env file can be used to [populate values in the compose file](https://docs.docker.com/compose/environment-variables/)\nand in conjunction with the Makefile helps create custom service sets.\n\n### Quick-Start Example\n\n1. Clone this repo\n2. Create a `.env` file and populate with:\n```\nBASE_COMPOSE_FILE=docker-compose.nginx.yml\nCOMPOSE_FILE=\nCAMINO_HOME=${PWD}\n```\n3. Run `make up`\n4. Navigate to `localhost`\n\nServices can be customized without modifying base\ncompose files by creating overrides files in `conf/camino/`\n\n##### To override the version of nginx image used in the previous example\n\n1. Create file `docker-compose.nginx.overrides.yml` In `conf/camino` and paste in:\n```\nversion: \"3.8\"\nservices:\n  nginx:\n    image: nginx:stable\n```\n2. In the .env file add entry, `COMPOSE_FILE=docker-compose.nginx.overrides.yml`\n3. run make up\n4. Note that the nginx image with tag `stable` is being pulled down\n5. Navigating to `localhost` now displays the default page for the new image\n\nTo facilitate continuous integration without updating the Camino repo, \na service in a compose file can be tagged with `:latest`. New images built and published with the tag `:latest` can then be deployed without requiring updates to Camino.\n\n\nDeploying with Jenkins:\n\n1. Build and publish the image [Build/Publish Core Portal](https://jenkins01.tacc.utexas.edu/view/Frontera%20Web/job/Frontera_Portal/) [Build/Publish CMS](https://jenkins01.tacc.utexas.edu/view/Frontera%20Web/job/Frontera_CMS/)\n2. If required, update the service's image reference in the appropriate compose file as described above\n3. Go to [Frontera_Deployments](https://jenkins01.tacc.utexas.edu/view/Frontera%20Web/job/Frontera_Deploy/) in Jenkins and start a build, selecting environment and component/service\n\nA Makefile is included to facilitate manual deployment.\n\nSteps for manually deploying service:\n\n1. Update the Camino compose file with image reference as needed\n2. Switch to user portal with `sudo su - portal` \n3. Navigate to the Camino repo `cd /opt/portal/camino/`\n4. Run the appropriate `make` command \n    *cms: `make deploy-cms`\n    *core portal: `make deploy-core`\n    *user guide: `make deploy-docs`\n    *all services: : `make deploy-all`\n\n\n\n\n_por necesidad o aventura, todo descubrimiento nace con el inicio de un viaje sin fin, el camino hacia la frontera_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftacc%2Fcamino","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftacc%2Fcamino","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftacc%2Fcamino/lists"}