{"id":24503636,"url":"https://github.com/plus3it/salt-reposync","last_synced_at":"2025-03-15T08:23:28.211Z","repository":{"id":38362022,"uuid":"77531303","full_name":"plus3it/salt-reposync","owner":"plus3it","description":"Sync salt packages for a specific salt version from the upstream salt repo to your own S3 bucket","archived":false,"fork":false,"pushed_at":"2025-01-06T04:49:10.000Z","size":248,"stargazers_count":1,"open_issues_count":1,"forks_count":4,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-01-21T23:17:48.808Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HCL","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/plus3it.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-12-28T12:29:09.000Z","updated_at":"2024-08-19T04:30:07.000Z","dependencies_parsed_at":"2023-11-13T05:33:00.730Z","dependency_job_id":"7372a12a-d062-45ff-98e9-9476235680de","html_url":"https://github.com/plus3it/salt-reposync","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plus3it%2Fsalt-reposync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plus3it%2Fsalt-reposync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plus3it%2Fsalt-reposync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plus3it%2Fsalt-reposync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/plus3it","download_url":"https://codeload.github.com/plus3it/salt-reposync/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243703894,"owners_count":20334065,"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-01-21T23:17:54.758Z","updated_at":"2025-03-15T08:23:28.193Z","avatar_url":"https://github.com/plus3it.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# salt-reposync\nPull salt packages for specific salt versions from an s3-hosted yum repo and\npush them to S3.\n\n## Usage\n\n```\nterraform init\nterraform plan -var bucket_name=\u003cBUCKET\u003e -var salt_versions='[\"SALT_VERSION\"]' -out tfplan\nterraform apply -var bucket_name=\u003cBUCKET\u003e -var salt_versions='[\"SALT_VERSION\"]' tfplan\n```\n\n## Prerequisites\n\n1.  An AWS credential with get/put permissions to the S3 bucket must be pre-\n    configured. Any method supported by the `aws` CLI may be used to configure\n    the credential.\n2.  `rclone` \u003e= 1.57.0 must be installed and available and in the PATH.\n\n## Testing\n\nAt the moment, testing is manual:\n\n```\nmake rclone/install\n\n# Replace \"xxx\" with an actual AWS profile, then execute the integration tests.\nexport AWS_PROFILE=xxx \nmake terraform/pytest PYTEST_ARGS=\"-v --nomock\"\n```\n\n## Submodules\n\n*   `repo` - Uses `rclone` to create a copy of the salt yum repo for the salt\n    versions specified by `var.salt_versions`.\n\n*   `defs` - Creates yum repo definition files for all `var.salt_versions` in \n    the S3 bucket specified by `var.bucket_name`.\n\n\u003c!-- BEGIN TFDOCS --\u003e\n## Requirements\n\nNo requirements.\n\n## Providers\n\nNo providers.\n\n## Resources\n\nNo resources.\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_bucket_name\"\u003e\u003c/a\u003e [bucket\\_name](#input\\_bucket\\_name) | S3 bucket where salt repo will be mirrored | `string` | n/a | yes |\n| \u003ca name=\"input_repo_endpoint\"\u003e\u003c/a\u003e [repo\\_endpoint](#input\\_repo\\_endpoint) | HTTP/S endpoint URL that hosts the yum repos; used with the baseurl in the yum .repo definitions | `string` | n/a | yes |\n| \u003ca name=\"input_repos\"\u003e\u003c/a\u003e [repos](#input\\_repos) | Schema list of repo objects. `repo_prefix` is the S3 key prefix where the repo will be mirrored. `salt_s3_bucket` is the name of s3 bucket; typically \"s3\" when using a cloudfront endpoint. `salt_s3_endpoint` is the upstream s3 endpoint hosting the repos. `salt_versions` is the list of salt versions to mirror. `yum_prefix` is the S3 key prefix for the yum repo definition files. | \u003cpre\u003elist(object({\u003cbr\u003e    repo_prefix      = string\u003cbr\u003e    salt_s3_bucket   = string\u003cbr\u003e    salt_s3_endpoint = string\u003cbr\u003e    salt_versions    = list(string)\u003cbr\u003e    yum_prefix       = string\u003cbr\u003e  }))\u003c/pre\u003e | n/a | yes |\n\n## Outputs\n\nNo outputs.\n\n\u003c!-- END TFDOCS --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplus3it%2Fsalt-reposync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplus3it%2Fsalt-reposync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplus3it%2Fsalt-reposync/lists"}