1000+ DevOps Bash Scripts - AWS, GCP, Kubernetes, Docker, CI/CD, APIs, SQL, PostgreSQL, MySQL, Hive, Impala, Kafka, Hadoop, Jenkins, GitHub, GitLab, BitBucket, Azure DevOps, TeamCity, Spotify, MP3, LDAP, Code/Build Linting, pkg mgmt for Linux, Mac, Python, Perl, Ruby, NodeJS, Golang, Advanced dotfiles: .bashrc, .vimrc, .gitconfig, .screenrc, tmux..
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Hari Sekhon fe49cbfafe updated check_non_executable_scripts.sh 5 years ago
.bash.d updated kafka.sh 5 years ago
kafka_wrappers updated kafka.sh source path 5 years ago
lib updated utils.sh 5 years ago
setup Update rpm-packages.txt 5 years ago
.bashrc updated .bashrc 5 years ago
.travis.yml updated .travis.yml 5 years ago
LICENSE updated LICENSE 8 years ago
Makefile updated Makefile 6 years ago
Makefile.in set system packages to not install when not in virtual env or perlbrew, do not use sudo it could be reset to blank if root and outside virtual env or perlbrew 6 years ago
README.md Update README.md 5 years ago
all.sh updated docker.sh location 5 years ago
apk-install-packages.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
apk-remove-packages.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
apt-install-packages.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
apt-remove-packages.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
brew-install-packages.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
center.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
check_bash_arrays.sh updated check_bash_arrays.sh 5 years ago
check_docker_clean.sh updated check_docker_clean.sh 5 years ago
check_duplicate_requirements.sh updated check_duplicate_requirements.sh 5 years ago
check_gradle_build.sh updated check_gradle_build.sh 5 years ago
check_makefile.sh updated check_makefile.sh 5 years ago
check_maven_pom.sh updated check_maven_pom.sh 5 years ago
check_no_tabs.sh updated check_no_tabs.sh 5 years ago
check_non_executable_scripts.sh updated check_non_executable_scripts.sh 5 years ago
check_perl_syntax.sh replaced let with ((expr)) 5 years ago
check_python3_compat.sh renamed python3.sh -> check_python3_compat.sh 7 years ago
check_python_asserts.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
check_python_exception_pass.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
check_python_find_quit.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
check_python_pep8.sh replaced let with ((expr)) 5 years ago
check_python_pylint.sh replaced let with ((expr)) 5 years ago
check_pytools.sh updated check_pytools.sh 5 years ago
check_ruby_syntax.sh replaced let with ((expr)) 5 years ago
check_sbt_build.sh replaced let with ((expr)) 5 years ago
check_shell_syntax.sh replaced let with ((expr)) 5 years ago
check_ssh_keys_encrypted.sh updated check_ssh_keys_encrypted.sh 5 years ago
check_tests_run_qualified.sh replaced which with command -v 5 years ago
check_tld_chars.sh replaced which with command -v 5 years ago
check_travis_yml.sh replaced which with command -v 5 years ago
check_whitespace.sh replaced backticks 5 years ago
clean_my_repos.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
curl_auth.sh Rename curl.sh to curl_auth.sh 5 years ago
docker_clean.sh added docker_clean.sh 6 years ago
docker_mount_build_exec.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
exec-interactive.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
find_duplicate_cpan_requirements.sh replaced let with ((expr)) 5 years ago
find_duplicate_lines.sh replaced let with ((expr)) 5 years ago
find_duplicate_pip_requirements.sh replaced let with ((expr)) 5 years ago
find_hanging_mount_point.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
find_unused_cpan_modules.sh replaced let with ((expr)) 5 years ago
find_unused_pip_modules.sh replaced let with ((expr)) 5 years ago
git_for_each_branch.sh updated git_for_each_branch.sh 7 years ago
git_merge_all.sh update git_merge_all.sh 7 years ago
git_merge_master.sh update git_merge_master.sh 7 years ago
git_merge_master_pull.sh update git_merge_master_pull.sh 7 years ago
git_pull_make_repos.sh replaced egrep with more standard grep -E, and other shellcheck tweaks 5 years ago
install_epel_repo.sh updated install_epel_repo.sh 5 years ago
install_gradle.sh replaced let with ((expr)) 5 years ago
install_groovy.sh replaced let with ((expr)) 5 years ago
install_maven.sh replaced let with ((expr)) 5 years ago
install_sbt.sh replaced let with ((expr)) 5 years ago
ldap_group_recurse.sh Update ldap_group_recurse.sh 6 years ago
ldap_user_recurse.sh updated ldap_user_recurse.sh 6 years ago
ldapsearch.sh Update ldapsearch.sh 5 years ago
perl_cpanm_install_if_absent.sh replaced backticks 5 years ago
python_compile.sh updated utils.sh location 5 years ago
python_module_to_import_name.sh updated python_module_to_import_name.sh 6 years ago
python_pip_install_if_absent.sh replaced backticks 5 years ago
random_select.sh replaced let with ((expr)) 5 years ago
repolist.txt updated repolist.txt 6 years ago
run_latest_tests.sh added run_latest_tests.sh 7 years ago
run_tests.sh replaced let with ((expr)) 5 years ago
scan_duplicate_macs.sh updated scan_duplicate_macs.sh 5 years ago
split.sh updated split.sh 5 years ago
ssl_get_cert.sh updated ssl_get_cert.sh 5 years ago
tabs_ignore.txt updated tabs_ignore.txt 6 years ago
update_my_repos.sh updated update_my_repos.sh 5 years ago
whitespace_ignore.txt updated whitespace_ignore.txt 6 years ago
yum-install-packages.sh updated yum-install-packages.sh 5 years ago
yum-remove-packages.sh updated yum-remove-packages.sh 5 years ago

README.md

Hari Sekhon - DevOps Bash Tools

Build Status Codacy Badge Platform DockerHub

Shell Scripts & Utility Code Library used by all my other GitHub repos.

For more advanced Systems Administration scripts in other languages, see the repos listed at the bottom of the page.

  • Scripts - Linux systems administration scripts

    • installation scripts for various OS packages (RPM, Deb, Apk) for various Linux distros (Redhat RHEL / CentOS / Fedora, Debian / Ubuntu, Alpine)
    • install if absent scripts for Python and Perl modules - good for combining with first attempt to install via system packages, and then these will pull from PyPI or CPAN only those modules which aren't installed. This speeds up builds and uses the standard packaged modules where possible. This is also more reliable than getting random compile errors from CPAN as libraries update and introduce bugs or needing to install too many dev libraries
    • install scripts for Jython and build tools like Gradle and SBT for when Linux distros don't provide packaged versions or where the packaged versions are too old
    • Git branch management
    • utility scripts used from other scripts
  • Bash utility libraries full of functions for Docker, environment, CI detection, port and HTTP url availability content checks etc.

  • Programming language linting:

    • Python (syntax, pep8, pre-byte-compiling)
    • Perl
    • Java
    • Scala
    • Ruby
    • Shell
    • Misc (whitespace, custom enforced checks like not calling quit() in python etc)
  • Build System and CI linting:

    • Make
    • Maven
    • SBT
    • Gradle
    • Travis CI
  • Data format validation using programs from my DevOps Python Tools repo:

    • CSV
    • JSON
    • Avro
    • Parquet
    • INI / Properties files (Java)
    • LDAP LDIF
    • XML
    • YAML

Currently utilized in the following GitHub repos:

Pre-built Docker images are available for those repos (which include this one as a submodule) and the "docker available" icon above links to an uber image which contains all my github repos pre-built. There are Centos, Debian and Ubuntu versions of this uber Docker image containing all repos.