Code & DevOps Config templates for many popular programming languages and DevOps tools including:
- Kubernetes - advanced K8s templates eg. deployment.yaml, statefulset.yaml, service.yaml, ingress.yaml, kustomization.yaml, skaffold.yaml, helmfile.yaml, k3d.yaml, kind.yaml and many others
- Terraform - provider.tf, backend.tf, variables.tf, terraform.tfvars - see this bundle trick
- Docker - Dockerfile, docker-compose.yml
- HashiCorp Packer - template.pkr.hcl - run as-is to build portable OVA Virtual Machines of Debian, Ubuntu and RHEL-based distros using 100% automated installs, see Packer section below
- AWS - various -
aws_*
, buildspec.yml,ec*
, eksctl.yaml,lambda*
,s3*
- GCP - cloudbuild.yaml, cloudbuild-golang.yaml, gcp_deployment-manager.yaml
- Jenkins - Jenkinsfile (advanced) and jenkins/vars/ Jenkins Shared Library
- GitHub Actions - github-action.yaml (advanced) and github-actions/.github/workflows GitHub Workflows Library
- Circle CI - circleci-config.yml (advanced)
- Vagrant - Vagrantfile
- Make - Makefile
- Maven - pom.xml
- SBT - build.sbt
- Gradle - build.gradle
- Golang - template.go
- Groovy - template.groovy
- Perl - template.pl, template.pm
- Python / Jython - template.py /
template.jy
- Ruby / JRuby - template.rb, template.jrb, Gemfile
- Scala - template.scala
- Bash - template.sh
- Puppet - template.pp
- Redhat Kickstart automated install - anaconda-ks.cfg
- Debian Preseed automated install - preseed.cfg
- Ubuntu AutoInstall Cloud-Init - autoinstall-user-data
- MermaidJS - template.mmd
- D2 Lang - diagram.d2
- Python Diagrams - diagram.py
- SQL - template.sql
- XML - template.xml
- YAML - template.yaml
Many more real world DevOps Tooling & CI/CD configs for all major CI/CD systems can be found in the DevOps Bash tools repo.
Forked from DevOps Perl tools, this is now a submodule of the following repos:
new.pl
can instantiate these templates as new date-timestamped files, autopopulating the date, vim tags, GitHub URL and other headers and drops you in to your $EDITOR
of choice (eg. vim
).
You can give an exact filename like Dockerfile
, Makefile
, Jenkinsfile
, docker-compose.yml
, pom.xml
, build.gradle
, or you can instantiate one of the templates based on their file extension (eg. py
, sh
) with any filename (eg. main.py
, test.py
, myapp.py
).
Examples:
new Makefile
new Dockerfile
new Jenkinsfile
new docker-compose.yml
new myapp.py
new build.gradle
new .github/workflows/build.yaml
new.pl
can be found in the DevOps Perl tools repo.
alias new=new.pl
(done automatically in the DevOps Bash tools repo .bash.d/
)
new terraform
Instantly creates and opens all standard files for a Terraform deployment in your $EDITOR
of choice:
all heavily commented to get a new Terraform environment up and running quickly - with links to things like AWS / GCP regions, Terraform backend providers, state locking etc.
new terraform
or shorter
new tf
Creates portable OVA format Virtual Machines using 100% automated installations of Ubuntu, Debian and RHEL/Fedora using their native installers:
You can run this as-is to get portable OVA format Virtual Machines of all 3 distros (builds Fedora instead of RHEL since CentOS is EOL):
packer build template.pkr.hcl
Although your machine may struggle to run all 3 VMs running installers at the same time, so you can run just one like this:
packer build --only=ubuntu.* template.pkr.hcl
For convenience you may just type make ubuntu
, or debian or fedora, to quickly delete any leftover VM/files and run it.
- Packer - template.pkr.hcl - uses the following:
- Redhat Kickstart - anaconda-ks.cfg
- Debian Preseed - preseed.cfg
- Ubuntu AutoInstall - autoinstall-user-data
For production just copy the templates you want:
new mybuild.pkr.hcl
and delete the bits you don't want (it's faster and less error prone than typing, or pasting and fixing). Don't forget to copy and edit the install automation:
new preseed.cfg
-
Jenkins - Advanced Jenkinsfile & Jenkins Groovy Shared Library
-
GitHub-Actions - GitHub Actions master template & GitHub Actions Shared Workflows library
-
DevOps Bash Tools - 1000+ DevOps Bash Scripts, Advanced
.bashrc
,.vimrc
,.screenrc
,.tmux.conf
,.gitconfig
, CI configs & Utility Code Library - AWS, GCP, Kubernetes, Docker, Kafka, Hadoop, SQL, BigQuery, Hive, Impala, PostgreSQL, MySQL, LDAP, DockerHub, Jenkins, Spotify API & MP3 tools, Git tricks, GitHub API, GitLab API, BitBucket API, Code & build linting, package management for Linux / Mac / Python / Perl / Ruby / NodeJS / Golang, and lots more random goodies -
SQL Scripts - 100+ SQL Scripts - PostgreSQL, MySQL, AWS Athena, Google BigQuery
-
Kubernetes configs - Kubernetes YAML configs - Best Practices, Tips & Tricks are baked right into the templates for future deployments
-
Terraform - Terraform templates for AWS / GCP / Azure / GitHub management
-
DevOps Python Tools - 80+ DevOps CLI tools for AWS, GCP, Hadoop, HBase, Spark, Log Anonymizer, Ambari Blueprints, AWS CloudFormation, Linux, Docker, Spark Data Converters & Validators (Avro / Parquet / JSON / CSV / INI / XML / YAML), Elasticsearch, Solr, Travis CI, Pig, IPython
-
DevOps Perl Tools - 25+ DevOps CLI tools for Hadoop, HDFS, Hive, Solr/SolrCloud CLI, Log Anonymizer, Nginx stats & HTTP(S) URL watchers for load balanced web farms, Dockerfiles & SQL ReCaser (MySQL, PostgreSQL, AWS Redshift, Snowflake, Apache Drill, Hive, Impala, Cassandra CQL, Microsoft SQL Server, Oracle, Couchbase N1QL, Dockerfiles, Pig Latin, Neo4j, InfluxDB), Ambari FreeIPA Kerberos, Datameer, Linux...
-
The Advanced Nagios Plugins Collection - 450+ programs for Nagios monitoring your Hadoop & NoSQL clusters. Covers every Hadoop vendor's management API and every major NoSQL technology (HBase, Cassandra, MongoDB, Elasticsearch, Solr, Riak, Redis etc.) as well as message queues (Kafka, RabbitMQ), continuous integration (Jenkins, Travis CI) and traditional infrastructure (SSL, Whois, DNS, Linux)
-
HAProxy Configs - 80+ HAProxy Configs for Hadoop, Big Data, NoSQL, Docker, Elasticsearch, SolrCloud, HBase, Cloudera, Hortonworks, MapR, MySQL, PostgreSQL, Apache Drill, Hive, Presto, Impala, ZooKeeper, OpenTSDB, InfluxDB, Prometheus, Kibana, Graphite, SSH, RabbitMQ, Redis, Riak, Rancher etc.
-
Dockerfiles - 50+ DockerHub public images for Docker & Kubernetes - Hadoop, Kafka, ZooKeeper, HBase, Cassandra, Solr, SolrCloud, Presto, Apache Drill, Nifi, Spark, Mesos, Consul, Riak, OpenTSDB, Jython, Advanced Nagios Plugins & DevOps Tools repos on Alpine, CentOS, Debian, Fedora, Ubuntu, Superset, H2O, Serf, Alluxio / Tachyon, FakeS3
-
Diagrams-as-Code - Cloud & Open Source architecture diagrams with Python source code provided - automatically regenerated via GitHub Actions CI/CD - AWS, GCP, Kubernetes, ArgoCD, Kong API Gateway, Nginx, Redis, PostgreSQL, Kafka, Spark, web farms, event processing...