{"id":15059282,"url":"https://github.com/redhat-developer/mapt","last_synced_at":"2025-04-10T13:13:11.175Z","repository":{"id":60974320,"uuid":"540642314","full_name":"redhat-developer/mapt","owner":"redhat-developer","description":"Multi Architecture Provisioning Tool","archived":false,"fork":false,"pushed_at":"2025-03-25T14:13:45.000Z","size":33247,"stargazers_count":11,"open_issues_count":64,"forks_count":10,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-30T14:35:43.580Z","etag":null,"topics":["airgap","aks","arm64","aws","azure","custom","fedora","gh-runner","k8s","macos","proxy","rhel","spot-price","spot-prices","vpn","windows-desktop","windows-server","x86-64"],"latest_commit_sha":null,"homepage":"","language":"Go","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/redhat-developer.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2022-09-23T22:56:42.000Z","updated_at":"2025-03-25T14:23:47.000Z","dependencies_parsed_at":"2023-10-16T11:06:49.303Z","dependency_job_id":"f3f1d1cf-40bc-487f-8aeb-907ae66a317c","html_url":"https://github.com/redhat-developer/mapt","commit_stats":{"total_commits":103,"total_committers":1,"mean_commits":103.0,"dds":0.0,"last_synced_commit":"fd838a69bfb1e95aadc9519c9f249169b15e08de"},"previous_names":["redhat-developer/mapt","adrianriobo/qenvs"],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fmapt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fmapt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fmapt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fmapt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-developer","download_url":"https://codeload.github.com/redhat-developer/mapt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248225652,"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":["airgap","aks","arm64","aws","azure","custom","fedora","gh-runner","k8s","macos","proxy","rhel","spot-price","spot-prices","vpn","windows-desktop","windows-server","x86-64"],"created_at":"2024-09-24T22:40:35.240Z","updated_at":"2025-04-10T13:13:05.590Z","avatar_url":"https://github.com/redhat-developer.png","language":"Go","readme":"# mapt (Multi Architecture Provisionig Tool)\n\nMapt is a swiss army knife for provisioning environments, it could be used across multiple CI/CD systems:\n\n* Github Actions: It is possible to spin the target machines as self hosted runners on your github repo to make use of them within actions.\n* Tekton: Each target environemnt offered has its own tekton task spec which could be used as a extenal spec on tekton (with git resolver or even as a bunde)\n* Run from anywhere: mapt funcionallity is offered as an OCI image, as so it allows to create environment from almost everywhere as long as you have a container runtime.\n\nAlso it includes out of the box some optimizations around provisioning:\n\n* Spot price option which allows to find the best option for the target machine on any location across the target provider.\n* Implement optimization around boot time to reduce the amount of time required to spin the machines (i.e. pre created snapshots or change root volumes)\n\nAbout 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:\n\n* Airgap \n* Proxy (Coming...)\n* VPN emulation (Coming... )\n* Domain Controller integration (Coming... )\n\n![code check](https://github.com/redhat-developer/mapt/actions/workflows/build-go.yaml/badge.svg)\n![oci builds](https://github.com/redhat-developer/mapt/actions/workflows/build-oci.yaml/badge.svg)\n\n## Supported environments\n\n### Virtual Machines\n\n| Platform       | Archs         | Provider      | Type          | Information                  | Tekton                                       \n| -------------- | ------------- | ------------- | ------------- | ---------------------------- | -------------------------------------------- \n| Mac            | x86, M1, M2   | AWS           | Baremetal     | [info](docs/aws/mac.md)      | [task](tkn/infra-aws-mac.yaml)               \n| Windows Server | x86           | AWS           | Baremetal     | [info](docs/aws/windows.md)  | [task](tkn/infra-aws-windows-server.yaml)    \n| Windows Desktop| x86           | Azure         | Virtualized   | [info](docs/azure/windows.md)| [task](tkn/infra-azure-windows-desktop.yaml) \n| RHEL           | x86, arm64    | AWS           | Customizable  | [info](docs/aws/rhel.md)     | [task](tkn/infra-aws-rhel.yaml)              \n| RHEL           | x86, arm64    | Azure         | Virtualized   | [info](docs/azure/rhel.md)   | [task](tkn/infra-azure-rhel.yaml)            \n| Fedora         | x86, arm64    | AWS           | Customizable  | [info](docs/aws/fedora.md)   | [task](tkn/infra-aws-fedora.yaml)            \n| Fedora         | x86, arm64    | Azure         | Customizable  | [info](docs/azure/fedora.md) | [task](tkn/infra-azure-fedora.yaml)          \n| Ubuntu         | x86           | Azure         | Virtualized   | [info](docs/azure/ubuntu.md) | -                                            \n\n### Services\n\n| Service        | Provider      | Information                  | Tekton                         \n| -------------- | ------------- | -------------                | ---------------------------- | \n| AKS            | Azure         | [info](docs/azure/aks.md)    | [task](tkn/infra-azure-aks.yaml) \n\n## CI/CD integrations\n\n### Github Self hosted runner\n\n`mapt` can setup a deployed machine as a Self Hosted runner on most of the Platform and Provider combinations\nit supports.\n\nUse the following flags with `mapt \u003cprovider\u003e \u003cplatform\u003e create` command:\n\n```\n--install-ghactions-runner \u003cbool\u003e   Install and setup Github Actions runner in the instance\n--ghactions-runner-name \u003cstring\u003e    Name for the Github Actions Runner\n--ghactions-runner-repo \u003cstring\u003e    Full URL of the repository where the Github Actions Runner should be registered\n--ghactions-runner-token \u003cstring\u003e   Token needed for registering the Github Actions Runner token\n```\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Fmapt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-developer%2Fmapt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Fmapt/lists"}