Git Product home page Git Product logo

salt-reposync's Introduction

salt-reposync

Pull salt packages for specific salt versions from an s3-hosted yum repo and push them to S3.

Usage

terraform init
terraform plan -var bucket_name=<BUCKET> -var salt_versions='["SALT_VERSION"]' -out tfplan
terraform apply -var bucket_name=<BUCKET> -var salt_versions='["SALT_VERSION"]' tfplan

Prerequisites

  1. An AWS credential with get/put permissions to the S3 bucket must be pre- configured. Any method supported by the aws CLI may be used to configure the credential.
  2. rclone >= 1.57.0 must be installed and available and in the PATH.

Testing

At the moment, testing is manual:

make rclone/install

# Replace "xxx" with an actual AWS profile, then execute the integration tests.
export AWS_PROFILE=xxx 
make terraform/pytest PYTEST_ARGS="-v --nomock"

Submodules

  • repo - Uses rclone to create a copy of the salt yum repo for the salt versions specified by var.salt_versions.

  • defs - Creates yum repo definition files for all var.salt_versions in the S3 bucket specified by var.bucket_name.

Requirements

No requirements.

Providers

No providers.

Resources

No resources.

Inputs

Name Description Type Default Required
bucket_name S3 bucket where salt repo will be mirrored string n/a yes
repo_endpoint HTTP/S endpoint URL that hosts the yum repos; used with the baseurl in the yum .repo definitions string n/a yes
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.
list(object({
repo_prefix = string
salt_s3_bucket = string
salt_s3_endpoint = string
salt_versions = list(string)
yum_prefix = string
}))
n/a yes

Outputs

No outputs.

salt-reposync's People

Contributors

confusdcodr avatar dalerichardson avatar dependabot-preview[bot] avatar dependabot[bot] avatar dwc0011 avatar eemperor avatar ferricoxide avatar kbalk avatar lorengordon avatar mergify[bot] avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

salt-reposync's Issues

[Enhancement]: Disable repo-level GPG-checking for SaltStack repo

** Problem: **

Some hardening-requirements will cause repository-level GPG signature-checking to be enabled by default. If a defined repository has no signature, it will cause yum to fail.

** Fix: **

In the modules/defs/yum.repo, add the config-token:

repo_gpgcheck=0

To disable repo-level signature-checking for the saltstack repo

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.