{"id":27230627,"url":"https://github.com/ops4j/org.ops4j.pax.clapper","last_synced_at":"2025-04-10T13:30:16.463Z","repository":{"id":66752311,"uuid":"13465979","full_name":"ops4j/org.ops4j.pax.clapper","owner":"ops4j","description":"Managed Application Deployment system for Cloud providers.","archived":false,"fork":false,"pushed_at":"2013-10-11T11:32:18.000Z","size":220,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":10,"default_branch":"develop","last_synced_at":"2024-04-13T16:08:23.213Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Groovy","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/ops4j.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}},"created_at":"2013-10-10T08:31:34.000Z","updated_at":"2013-10-11T11:32:21.000Z","dependencies_parsed_at":"2023-02-20T10:45:46.014Z","dependency_job_id":null,"html_url":"https://github.com/ops4j/org.ops4j.pax.clapper","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/ops4j%2Forg.ops4j.pax.clapper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ops4j%2Forg.ops4j.pax.clapper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ops4j%2Forg.ops4j.pax.clapper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ops4j%2Forg.ops4j.pax.clapper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ops4j","download_url":"https://codeload.github.com/ops4j/org.ops4j.pax.clapper/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248225704,"owners_count":21068078,"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":"2025-04-10T13:30:15.530Z","updated_at":"2025-04-10T13:30:16.431Z","avatar_url":"https://github.com/ops4j.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pax Clapper\n\n\nPax Clapper is a Deployment Management system, with ambitions to be for OSGi applications what Google AppEngine\nis for web applications.\n\n## Abstraction\nPax Clapper operates with a few abstractions, and concrete implementations of these abstractions must be developed,\neither for public cloud providers or for in-house cloud, virtualization or other deployment architectures.\n\n    * Container - Abstraction of the _clean_ host.\n    * Runtime - The process(es) that is started in the Container.\n    * Client - User Interfaces to the running Clapper plant.\n    * CellLocation - A geographic location where Cells can reside\n    * Cell - A logical partition of a data center, containing hosts and networks.\n    * Stage - A step in a progress of Application Lifecycle Management. dev -\u003e qa -\u003e uat -\u003e prod\n    * InstancePool - A set of resources spanning all Stages in a Cell and containing one Application.\n\n## Containers\nThe Container abstraction tries to encompass the vital parts of what is needed to run an application. The Container\nabstraction is simplified from the usage point of view, to ensure that a wide range of Container types can be supported.\n\nThe initial *Bare* container is simply a naked Linux host, without virtualization capabilities at all. It effectively\nworks as a permanent \"image\" that is always available, where start/stop of the image has no effect.\n\nAn EC2 container is the natural next step to implement, possibly followed with the Google Compute and other offereings.\n\n## Runtimes\nRuntimes represents the process or processes that are started inside the Container.\n\nInitially, we would like to support both a _scripted_ and a _OSGi_ runtime, with the latter being capable of providing\ncustom bundles for application-level services.\n\n### Services Runtime\nThe Services Runtime will start an OSGi framework and load configured _Service Bundles_, which extend the basic\nClapper platform with environment/firm specific extensions available to the applications.\n\nApplications are packaged as Deployment Packages, defined by the OSGi Deployment Admin Specification 114.\n\n### Scripted Runtime\nThe Scripted Runtime simply deploys a script on to the Container. The script must work with all resources only being\nreachable be network, not on the local file system.\n\n## Server\nThe Pax Clapper server is a Pax Clapper application managing itself.\n\n### Rest Interface\nThe Server application has a REST-ful interface, which is fully HATEOAS with a single bookmarkable URL. All interaction\nof Pax Clapper happens over this interface, and clients can only interact with Pax Clapper via this interface.\n\n## Clients\nHuman users interact with Pax Clapper via one of the available clients. Initially, command line client primarily for\nscripting and the Web UI for interactively using Pax Clapper. All functionality of the REST Interface are available\nin all clients, unless impossible for technical reasons.\n\n### CLI - Command Line Interface\n\n### Web\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fops4j%2Forg.ops4j.pax.clapper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fops4j%2Forg.ops4j.pax.clapper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fops4j%2Forg.ops4j.pax.clapper/lists"}