Microtica automates the entire software delivery process, from setting up an infrastructure to delivering apps and services to the cloud using Kubernetes. Our goal is to help companies and developers adapt to the cloud much faster with a single tool built by developers, for developers.
To find out more about how the product works, read our documentation. By contributing to this project you help developers around the world to quickly start building their solutions in the cloud.
This Hacktoberfest, we need contributions for our open-source infrastructure components:
microtica-components / mic-cloudformation-hub
Open-source infrastructure components built using CloudFormation. The templates are packaged as components and available in Microtica portal forever free.
Microtica - Build infrastructure and ship applications in the cloud with a single tool
Microtica dramatically simplifies cloud setup and brings DevOps automation closer to developers - Subscribe on our Blog
What is Microtica
Microtica is a DevOps automation platform that enables companies and individuals to adopt cloud much faster.
We do that by standardizing the way you build infrastructure and ship applications in the cloud. With a single tool built by developers for developers.
Some of the benefits:
- You don’t need to integrate dozens of different tools to achieve the same level of automation
- Zero maintenance cost
- No need to write custom integration scripts to be able to interact with the cloud
- Integrated with Kubernetes. From production-ready infrastructure to delivery automation for your applications
- Free and ready to use infrastructure components to setup a complete infrastructure without writing any custom code
- Rich CI/CD functionalities
Documentation
The developers' documentation is…
These components are one of the core concepts of our platform. They represent reusable pieces of code that developers can use to set up their infrastructure. They are part of our FOREVER FREE package, allowing developers to use them whenever they want to, as much as they want to, regardless of the number of projects and environments.
We have the following open-source components:
Our list of open-source components is constantly growing. They are also available for use in the Microtica portal.
How to contribute?
You can contribute to this project by committing your CloudFormation templates that represent a reusable cloud infrastructure. Don't limit yourself, commit any type of infrastructure.
After you submit a pull request, we will review the templates, deploy them on our AWS account, and perform all necessary functions and security tests.
Finally, when we accept the pull request, we will publish the component in a separate GitHub repository and make you a contributor. Also, we will make it available in the Microtica portal for free usage.
Coding guidelines
Your CloudFormation templates should follow AWS CloudFormation best practices
And some more:
- Make the template as generic as possible. The templates are intended to be used by as many developers as possible. E.g. Kubernetes cluster, PostgreSQL database, SPA hosting infrastructure, etc.
- Give your best to make the templates as parametrized as possible. This will allow developers using the templates to configure them easily without adapting the code
- Define output parameters that would be relevant for other components to use. E.g. if you develop a template that creates a VPC, add vpcId as an output so other components (e.g. RDS MySql infrastructure that needs a VPC ID as input) can use it as a reference
An example template can be found here.
Git Flow
We use Github Flow, so all code changes happen through pull requests.
Pull requests are the best way to propose changes to the codebase and get them reviewed by maintainers.
- Fork the repo and create your branch from the master branch
- Create a separate folder in the root path for your templates. The name of the folder should start with the component- (e.g. component-mongodb)
- Add tests for each CloudFormation template
- Ensure the test suite passes all the time
- Open a pull request
- Create an issue referencing the pull request. This ensures that we can track the bug being fixed or feature being added easily
IMPORTANT: Before contributing, please read our Code of Conduct.
ALSO IMPORTANT: For better communication, we’ve created a Slack channel where we can answer questions and discuss anything you find unclear.
Also, we’re always happy to hear feedback from fellow developers and consider fresh ideas to improve, so feel free to write them on our Slack channel. You can also contact our team members on Twitter:
We’re looking forward to your contributions!
Top comments (0)