{"id":17877137,"url":"https://github.com/herrjulz/aviator-cf-apps","last_synced_at":"2026-01-16T00:49:33.843Z","repository":{"id":69923575,"uuid":"86257493","full_name":"herrjulz/aviator-cf-apps","owner":"herrjulz","description":null,"archived":false,"fork":false,"pushed_at":"2017-12-10T19:44:53.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T15:14:06.174Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"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/herrjulz.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2017-03-26T19:03:10.000Z","updated_at":"2018-05-13T04:00:19.000Z","dependencies_parsed_at":"2023-05-25T16:45:38.451Z","dependency_job_id":null,"html_url":"https://github.com/herrjulz/aviator-cf-apps","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/herrjulz%2Faviator-cf-apps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Faviator-cf-apps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Faviator-cf-apps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herrjulz%2Faviator-cf-apps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/herrjulz","download_url":"https://codeload.github.com/herrjulz/aviator-cf-apps/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246916743,"owners_count":20854511,"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":[],"created_at":"2024-10-28T11:45:25.117Z","updated_at":"2026-01-16T00:49:33.836Z","avatar_url":"https://github.com/herrjulz.png","language":null,"readme":"# Aviator - cf-app\n\nThis is an `aviator` repository, which sets up a **dynamic/scalable** `Concourse` pipeline for your Cloud Foundry Apps. The pipeline pushs your app to an Cloud Foundry instance triggered by a git commit.\n\n[Get Aviator](https://github.com/JulzDiverse/aviator#installation)\n\n## Meta Configuration\n\nThis pipeline uses the following Concourse resources:\n\n- [Concourse CF-Resource](https://github.com/concourse/cf-resource)\n- [Concourse Git-Resource](https://github.com/concourse/git-resource)\n\nTo get more information about the settings, please check the README files of the provided concourse resources. \n\n### Basic Configuration\n\nOpen `app/myapp.yml` with the following content, replace the placeholders with your app information and rename the file to match your app name:\n\n```yaml\nmeta:\n  git:\n    app-name: \u003capp-name\u003e\n    ssh: \u003cgit-uri\u003e\n    branch: master\n    trigger: false\n    private-key: |+\n      -----BEGIN RSA PRIVATE KEY-----\n      MIIEowIBALJDIFOWLEA9K9SJOX/MAG0ivT4JdCljeouau6UUhwzOXaN0C9Fr4vw8\n      RSv3SiBRfqZ/maDVz+9J9ex5T7KOBHELSFIJFSLKELFJK/TyX40OF+hOnBb1O91R\n      ... some more lines ...\n      GqRcQNuaMa6Q5G7bK25/LOAf8B5Dd1mHT7Dm2yp7l0AhTuHklHRz\n      -----END RSA PRIVATE KEY-----\n  cf:\n    api: \u003capi-endpoint\u003e\n    username: \u003ccf-username\u003e\n    password: \u003ccf-password\u003e\n    org: \u003ccf-org\u003e\n    space: \u003ccf-space\u003e\n ```\n\n**Git Section** \n\n- **app-name** (required): the name of your app\n- **uri** (required): the git resource URI (either ssh or http)\n- **branch** (required): branch of the git resource that should be pushed\n- **trigger** (required): Concourse configuration for the git resource. When set to `true` the pipeline will automatically be triggered when a commit is pushed to the given branch.\n- **private-key** (optional): ssh key to pull the git resource using ssh.  \n\n**CF Section**\n\n- **api** (required): the API endpoint of the CF instance you're going to push your app to. \n- **username** (required): your cf username \n- **password** (required): your cf password\n- **org** (required): your cf organisation, where your is going to be pushed. \n- **space** (required): your cf space, where your app is going to be pushed. \n- **current_app_name:** This should be the name of the application that this will re-deploy over. If this is set the resource will perform a zero-downtime deploy. \n- **docker_username** (optional): This is used as the username to authenticate against a protected docker registry.\n- **docker_password** (optional): This should be the users password when authenticating against a protected docker registry.\nYou can add as many app meta files to the `apps` directory as you want. To uptdate the pipeline with the newly added app just re-execute aviator. \n\n### Add a Unit-Test Job \n\nYou can add a preceding job to the cf-push job by adding additionally - beside the `git` and `cf` - the `pre` section to the `meta` section in the app YAML file for an app:\n\n```yaml\nmeta:\n  unit_test:\n    name: \u003cjob-name\u003e\n    docker-image: \u003cdocker image to be used for that job\u003e\n    script: \u003cpath to the script inside the git repository to be executed\u003e\n```\n\n**unit_test**\n\n- **name** (required): name of the job (e.g unit-test-myapp)\n- **docker-image**: the docker image that should be used to execute the job\n- **script**: path to the script that should be executed inside your git repository. For example, if you have a script in your git resource `myapp/scripts/myscript.sh`, your script path would be `scripts/myscript.sh`.  \n\n## Run Aviator\n\nAfter you setup your meta configuration just execute `aviator` as follows: \n\n```\n$ target=\u003cflytarget\u003e name=\u003cpipeline-name\u003e aviator \n```\n\nNote: make sure you are logged in with `fly` before you execute aviator. \n\nThat's It! ;)\n\n## BEFORE YOU START:\n\nRequirements:\n\n- You have a Concourse server up and running\n- You have the Fly CLI installed on your machine. More info about Fly [here](https://concourse.ci/fly-cli.html)\n- You have a Cloud Foundry instance you can push your apps to (e.g IBM Cloud - Bluemix, Pivotal Cloud Foundry, Bosh-Lite, etc.)\n\t- You can create an trial IBM Bluemix account [here](https://console.bluemix.net/)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherrjulz%2Faviator-cf-apps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fherrjulz%2Faviator-cf-apps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherrjulz%2Faviator-cf-apps/lists"}