redhat-developer / mapt

Multi Architecture Provisioning Tool
Apache License 2.0
9 stars 7 forks source link
airgap aks arm64 aws azure custom fedora gh-runner k8s macos proxy rhel spot-price spot-prices vpn windows-desktop windows-server x86-64

mapt (Multi Architecture Provisionig Tool)

Mapt is a swiss army knife for provisioning environments, it could be used across multiple CI/CD systems:

Also it includes out of the box some optimizations around provisioning:

About the target environments offered it is not limited to a single machine or service but it takes care of the full infra allowing to requrest complex topologies:

code check oci builds

Supported environments

Virtual Machines

Platform Archs Provider Type Information Tekton
Mac x86, M1, M2 AWS Baremetal info task
Windows Server x86 AWS Baremetal info task
Windows Desktop x86 Azure Virtualized info task
RHEL x86, arm64 AWS Customizable info task
RHEL x86, arm64 Azure Virtualized info task
Fedora x86, arm64 AWS Customizable info task
Fedora x86, arm64 Azure Customizable info task
Ubuntu x86 Azure Virtualized info -

Services

Service Provider Information Tekton
AKS Azure info task

CI/CD integrations

Github Self hosted runner

mapt can setup a deployed machine as a Self Hosted runner on most of the Platform and Provider combinations it supports.

Use the following flags with mapt <provider> <platform> create command:

--install-ghactions-runner <bool>   Install and setup Github Actions runner in the instance
--ghactions-runner-name <string>    Name for the Github Actions Runner
--ghactions-runner-repo <string>    Full URL of the repository where the Github Actions Runner should be registered
--ghactions-runner-token <string>   Token needed for registering the Github Actions Runner token