New repository versions may be created through the API. At least one set of base repository URLs should be provided.
POST http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/ { "RepositoryVersions": { "repository_version": "2.2.1.1", "display_name": "HDP-2.2.1.1" }, "operating_systems": [ { "OperatingSystems": { "os_type": "redhat6" }, "repositories": [ { "Repositories": { "repo_id": "HDP-2.2", "repo_name": "HDP", "base_url": "http://..." } }, { "Repositories": { "repo_id": "HDP-UTILS-1.1.0.20", "repo_name": "HDP-UTILS", "base_url": "http://..." } } ] } ] }
The user may query for all repository versions of a particular stack.
GET http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/ { href: "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/", items: [ { href: "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1", RepositoryVersions: { id: 1, stack_name: "HDP", stack_version: "2.2" } }, { href: "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/2", RepositoryVersions: { id: 2, stack_name: "HDP", stack_version: "2.2" } } ] }
Returns single repository version.
GET http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1 { href: "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1", RepositoryVersions: { display_name: "HDP-2.2.0.0-2041", id: 1, repository_version: "2.2.0.0-2041", stack_name: "HDP", stack_version: "2.2", upgrade_pack: "upgrade-2.2" }, operating_systems: [ { href: "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1/operating_systems/redhat5", OperatingSystems: { os_type: "redhat5", repository_version_id: 1, stack_name: "HDP", stack_version: "2.2" } }, { href: "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1/operating_systems/redhat6", OperatingSystems: { os_type: "redhat6", repository_version_id: 1, stack_name: "HDP", stack_version: "2.2" } } ] }
Deregisters repository version. It won't be possible to remove repository version which is installed on any of the clusters.
DELETE http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1
Updates repository version. It is possible to change display name and base URLs.
PUT http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1 { "RepositoryVersions": { "display_name": "HDP-2.2.1.1", "id": 1, "repository_version": "2.2.1.1" }, "operating_systems": [ { "href": "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1/operating_systems/redhat5", "OperatingSystems": { "os_type": "redhat5" }, "repositories": [ { "href": "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1/operating_systems/redhat5/repositories/HDP-2.2", "Repositories": { "base_url": "http://...", "os_type": "redhat5", "repo_id": "HDP-2.2", "repo_name": "HDP" } }, { "href": "http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/repository_versions/1/operating_systems/redhat5/repositories/HDP-UTILS-1.1.0.20", "Repositories": { "base_url": "http://...", "os_type": "redhat5", "repo_id": "HDP-UTILS-1.1.0.20", "repo_name": "HDP-UTILS" } } ] } ] }
User may validate URLs of repositories before persisting.
POST http://<server>:8080/api/v1/stacks/<stack_name>/versions/<stack_version>/operating_systems/redhat5/repositories/HDP-UTILS-1.1.0.20?validate_only=true { "Repositories": { "base_url": "http://..." } }