CloudOps automation made simpler!
Explore the docs ยป
Visit our blog
ยท
Report Bug
ยท
Request Feature
To make CloudOps automation simpler for developers and DevOps engineers.
A single repository to satisfy all your day-to-day CloudOps automation needs. Are you looking for a script to automate your Kubernetes management? Or do you need a script to restart the pod that is OOMkilled? We will cover that for you.
docker run -it -p 8888:8888 \
-v $HOME/.unskript:/data \
--user root \
docker.io/unskript/awesome-runbooks:latest
Inside the docker there is
/data
folder that is where we store thecredentials
andrunbooks
. So if you would like to retain theconnectors
andrunbooks
you can use the docker's-v
option to retain the changes done on thedocker
.
Note: New files are created inside the docker and will persist unless --rm option is used.
Once you run the above command, here's the table which will help you find the URL for runbook of your choice.
Join the CloudOps Community Workspace on Slack to connect with other users, contributors and awesome people behind awesome CloudOps automation project.
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated. Check out our Contribution Guidelines for more details.
Here is the Link for the Developer Guide
- You can use the docker environment (see instructions above) with your infrastructure credentials for validating your changes. We also have a sandbox where you can do testing : open a free account on unSkript to access the sandbox.
- Join our Slack Community so you can present yourself and get support
- Find or propose an issue you want to work on.
- Prepare the issue before you start working on it.
- Make sure the description is clear.
- Tag yourself in Assignees section.
- If using Docker
On your Host machine
:- git clone https://github.com/unskript/Awesome-CloudOps-Automation
- cd Awesome-CloudOps-Automation
- CONTAINER=
docker ps -l | grep awesome-runbooks | awk '{print $1}'
- docker cp templates/runbooks/GCP.ipynb $CONTAINER:/home/jovyan/runbooks/<YOUR_RUNBOOK_NAME.ipynb>
- Point your browser to
http://127.0.0.1:8888/lab/tree/<YOUR_RUNBOOK_NAME.ipynb>
- If using unSkript sandbox
- Onboarding will drop you into runbook creation with sandbox credentials
- Start building your lego from the proposed handle (GCP, k8s et al)
- Create a branch
- Copy over the template directory
cp -r templates/legos your_connector/legos/your_lego_name e.g. cp -r templates/legos GCP/legos/gcp_filter_instance_by_label
- You need to populate 4 files
- lego.json : add the description, headline and function_name
- lego.py : copy over the code you wrote inside the Jupyter interface into this file
- README.md : some description about what the lego does
- 1.png : a screenshot of the output of your code
- Open a Pull Request and add a member of the core team as Reviewer (Jayasimha, Shloka, Amit, Abhishek)
- Expect a feedback and merge in the next 48h-72h
- Once merged, promote your work on LinkedIn, Twitter and other social media channels! (Optional, but people need to know you are awesome ๐)
An example run for the above can be seen in the screencast
You can read about the Anatomy of a Runbook
The resource that are avilable for testing for our hacktoberfest is here
Except as otherwise noted this project is licensed under the Apache License, Version 2.0
.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 .
Unless required by applicable law or agreed to in writing, project distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.