{"id":13740733,"url":"https://github.com/redhat-developer/opencompose","last_synced_at":"2025-05-08T20:32:36.616Z","repository":{"id":71519368,"uuid":"80715544","full_name":"redhat-developer/opencompose","owner":"redhat-developer","description":"OpenCompose - A higher level abstraction for Kubernetes Resource","archived":false,"fork":false,"pushed_at":"2017-08-14T15:32:49.000Z","size":2699,"stargazers_count":64,"open_issues_count":47,"forks_count":12,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-08-04T04:06:59.464Z","etag":null,"topics":["application-definition","compose","containers","kubernetes","openshift"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/redhat-developer.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"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}},"created_at":"2017-02-02T10:40:36.000Z","updated_at":"2023-12-11T06:16:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"d4fca6d3-19dc-46e1-8574-ed28986ef692","html_url":"https://github.com/redhat-developer/opencompose","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fopencompose","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fopencompose/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fopencompose/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fopencompose/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-developer","download_url":"https://codeload.github.com/redhat-developer/opencompose/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224765551,"owners_count":17366134,"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":["application-definition","compose","containers","kubernetes","openshift"],"created_at":"2024-08-03T04:00:51.710Z","updated_at":"2024-11-15T10:31:03.281Z","avatar_url":"https://github.com/redhat-developer.png","language":"Go","readme":"\n# !! DISCONTINUED !!\n\n**This project has been discontinued**\n\nMost of the work from this has been tranformed into new project called [Kedge](https://github.com/kedgeproject/kedge)\n\n\n# OpenCompose\n\n[![Build Status Widget]][Build Status] [![GoDoc Widget]][GoDoc] [![Slack Widget]][Slack]\n\nOpenCompose is a declarative higher level abstraction for specific Kubernetes resources.\n\nA developer shouldn't have to learn various Kubernetes concepts just to test and deploy their applications.\nFocus on the application that is being developed.\n\nThe goal of OpenCompose is to make it easier for developers to on-board to Kubernetes.\n\nWe are at a very evolving stage of this project and we have listed some of our ideas as [issues](https://github.com/redhat-developer/opencompose/issues)\nand [examples](https://github.com/redhat-developer/opencompose/blob/master/examples/).\nWe are open to suggestions and contributions from the Kubernetes community as our project grows.\nPlease send any PRs, issues or RFCs to improve this project.\n\n## Use Case\n\nGo from a simple [hello-nginx.yaml](https://github.com/redhat-developer/opencompose/blob/master/examples/hello-nginx.yaml) example to a full Kubernetes environment:\n\nCreate (or download) `hello-nginx.yaml`\n\n```yaml\nversion: 0.1-dev\nservices:\n- name: helloworld\n  containers:\n  - image: nginx\n    ports:\n    - port: 80:8080\n      type: external\n```\n\nConvert the file using `opencompose`\n\n```sh\nopencompose convert -f hello-nginx.yaml\n# Alternatively, you can pass the URL of the remote file\nopencompose convert -f https://raw.githubusercontent.com/redhat-developer/opencompose/master/examples/hello-nginx.yaml\n```\n\nDeploy your generate artifacts to Kubernetes with `kubectl`\n\n```sh\nkubectl create -f helloworld-service.yaml -f helloworld-deployment.yaml\n```\n\n## Installation\n\n#### Binary installation\n\nThe easiest way to install OpenCompose is through our binary on our [GitHub release page](https://github.com/redhat-developer/opencompose/releases).\n\n```sh\n# Linux \ncurl -L https://github.com/redhat-developer/opencompose/releases/download/v0.2.0/opencompose-linux-amd64 -o opencompose\n\n# macOS\ncurl -L https://github.com/redhat-developer/opencompose/releases/download/v0.2.0/opencompose-darwin-amd64 -o opencompose\n\n# Windows\ncurl -L https://github.com/redhat-developer/opencompose/releases/download/v0.2.0/opencompose-windows-amd64.exe -o opencompose.exe\n\nchmod +x ./opencompose\nsudo mv ./opencompose /usr/local/bin/opencompose\n```\n\n#### Go (from source)\n\nTo test the latest changes (as our project is still in it's infancy), a simple `go get` is all you need to get the latest source.\n\n```sh\ngo get -u github.com/redhat-developer/opencompose\n```\n\nAlthough the binary is installed via `go get`. In order to create a properly signed build (ex. `opencompose version`), you will have to build it with `make bin`:\n\n```sh\ngo get -u github.com/redhat-developer/opencompose\nmake bin\n```\n\n## Shell autocompletion\n\nWe support both Bash and Zsh autocompletion.\n\n```sh\n# Bash (add to .bashrc for persistence)\nsource \u003c(opencompose completion bash)\n\n# Zsh (add to .zshrc for persistence)\nsource \u003c(opencompose completion zsh)\n```\n\n## Documentation\n\n - [OpenCompose file reference documentation](https://github.com/redhat-developer/opencompose/blob/master/docs/file-reference.md)\n - You can find more in [doc/](https://github.com/redhat-developer/opencompose/tree/master/docs) folder\n\n## Community\n\nWe always welcome your feedback and thoughts on the project! Come and join our mailing list - [opencompose [at] googlegroups.com](https://groups.google.com/forum/#!forum/opencompose). We also hangout on [slack.k8s.io](http://slack.k8s.io/) ([#sig-apps](https://kubernetes.slack.com/messages/sig-apps/)).\n\n[Build Status]: https://travis-ci.org/redhat-developer/opencompose\n[Build Status Widget]: https://travis-ci.org/redhat-developer/opencompose.svg?branch=master\n[GoDoc]: https://godoc.org/github.com/redhat-developer/opencompose\n[GoDoc Widget]: https://godoc.org/github.com/redhat-developer/opencompose?status.svg\n[Slack]: http://slack.kubernetes.io#sig-apps\n[Slack Widget]: https://s3.eu-central-1.amazonaws.com/ngtuna/join-us-on-slack.png\n","funding_links":[],"categories":["Continuous Delivery \u0026 GitOps","Configuration Management"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Fopencompose","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-developer%2Fopencompose","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Fopencompose/lists"}