{"id":20716366,"url":"https://github.com/mvladislav/ansible-install-server","last_synced_at":"2025-04-23T13:21:13.226Z","repository":{"id":151662948,"uuid":"383917970","full_name":"MVladislav/ansible-install-server","owner":"MVladislav","description":"ansible-role to setup a server with defined services and settings","archived":false,"fork":false,"pushed_at":"2025-03-13T22:01:59.000Z","size":356,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-30T00:03:37.146Z","etag":null,"topics":["ansible","ansible-role","linux","server","ubuntu"],"latest_commit_sha":null,"homepage":"","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MVladislav.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-07T20:31:37.000Z","updated_at":"2025-03-13T22:02:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"e9ed6d29-466b-4f27-ad9d-855ad4621efa","html_url":"https://github.com/MVladislav/ansible-install-server","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MVladislav%2Fansible-install-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MVladislav%2Fansible-install-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MVladislav%2Fansible-install-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MVladislav%2Fansible-install-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MVladislav","download_url":"https://codeload.github.com/MVladislav/ansible-install-server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250439371,"owners_count":21430839,"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":["ansible","ansible-role","linux","server","ubuntu"],"created_at":"2024-11-17T03:05:36.450Z","updated_at":"2025-04-23T13:21:13.213Z","avatar_url":"https://github.com/MVladislav.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Install Server\n\n[![Ansible Lint](https://github.com/MVladislav/ansible-install-server/actions/workflows/ansible-lint.yml/badge.svg)](https://github.com/MVladislav/ansible-install-server/actions/workflows/ansible-lint.yml)\n[![Ansible Molecule Test](https://github.com/MVladislav/ansible-install-server/actions/workflows/ci.yml/badge.svg)](https://github.com/MVladislav/ansible-install-server/actions/workflows/ci.yml)\n\n- [Install Server](#install-server)\n  - [Role Variables](#role-variables)\n  - [App list for possible install](#app-list-for-possible-install)\n  - [Dependencies](#dependencies)\n  - [Example Playbook](#example-playbook)\n  - [License](#license)\n\n---\n\nYou can checkout [MVladislav - ansible-env-setup - playbooks](https://github.com/MVladislav/ansible-env-setup/tree/main/playbooks) for how i use it in general.\n\nTested with:\n\n- Ubuntu 23.04\n\n## Role Variables\n\n```yml\nclients:\n  - name: \"{{ ansible_user }}\"\n    dev: true # will used for install additional services per user as (git|zsh|tmux|nvim|python|go|npm)\n    updateOrCreate: false # if the user should be updated with below values\n    # shell: /bin/bash # optional, else will auto selected depends on installed shells\n    # group: 'adm, cdrom, sudo' # optional\n    # createhome: true # optional\n    # password: # optional\ninstall_server_service_name: \"{{ service_name }}\"\ninstall_server_git_user: \"{{ ansible_user }}\"\ninstall_server_git_email: \"{{ ansible_user }}\"\n\n# some version manually needs to checked and updated\ninstall_server_links_to_check_update:\n  # https://snapcraft.io/node\n  snap_node_version: 22\n  java_version: 21\n\ninstall_server_config:\n  # APT (1) -------------------------------\n  apt_base: false\n  apt_duf: false\n  apt_exa: false\n  apt_eza: false\n  apt_bat: false\n  apt_ncdu: false\n  apt_auth_priv: false\n  apt_cert: false\n  apt_archive: false\n  apt_dev: false\n  apt_build: false\n  apt_libs: false\n  # APT (2) -------------------------------\n  apt_php: false\n  apt_lua: false\n  apt_java_jre_headless: false\n  apt_java_jdk: false\n  apt_java_ant: false\n  apt_java_maven: false\n  apt_java_gradle: false\n  # APT (3) -------------------------------\n  apt_snap: false\n  apt_qemu_guest_agent: false\n  apt_rasp_pi_pkg: false\n  apt_vpn_resolvconf: false\n  apt_vpn_wireguard: false\n  apt_vpn_openvpn: false\n  apt_vpn_openconnect: false\n  apt_latex: false\n  apt_pandoc: false\n  apt_john_the_ripper: false\n  apt_nmap: false\n  # DPKG ----------------------------------\n  # dpkg_...: false\n  # SNAP ----------------------------------\n  snap_juju: false\n  snap_maas: false\n  snap_microk8s: false\n  snap_kubectl: false\n  snap_helm: false\n  snap_multipass: false\n  snap_btop: false\n  snap_glow: false\n  snap_go: false # NOTE: pks installs depends on clients[...].dev\n  snap_httpie: false\n  snap_node: false # NOTE: pks installs depends on clients[...].dev\n  snap_openjdk: false\n  snap_openjfx: false\n  snap_ruby: false\n  # need to run \"rustup default stable\"\n  snap_rust: false\n  snap_shellcheck: false\n  snap_john_the_ripper: false\n  snap_nmap: false\n  # # FLATHUB ----------------------------------\n  # flatpak_john_the_ripper: false\n  # flatpak_nmap: false\n  # OTHER --------------------------------\n  inst_git_conf: false # NOTE: depends on clients[...].dev\n  inst_fonts: false\n  inst_zsh_conf: false # NOTE: depends on clients[...].dev\n  inst_tmux_conf: false # NOTE: depends on clients[...].dev\n  inst_nvim_conf: false # NOTE: depends on clients[...].dev\n  # PYTHON --------------------------------\n  apt_python: false # NOTE: pks installs depends on clients[...].dev\n  apt_python_pip: false\n  apt_python_venv: false\n  apt_python_dev: false\n  pip_s_tui: false\n  pip_virtualenv: false\n  pip_ruff: false\n  pip_autopep8: false\n  pip_black: false\n  pip_mypy: false\n  pip_pre_commit: false\n  pip_openconnect_sso: false\n  pip_ansible: false\n  # NPM --------------------------------\n  npm_typescript: false\n  # GO --------------------------------\n  go_kompose: false\n  go_act: false\n```\n\n## App list for possible install\n\n\u003e some of below service installations includes more packages which combined by topic\n\n| App                    | snap | flathub | apt | pip | go  | source/conf | topic       |\n| :--------------------- | :--: | :-----: | :-: | :-: | :-: | :---------: | :---------- |\n| curl                   |      |         |  x  |     |     |             | base\\*      |\n| rsync                  |      |         |  x  |     |     |             | base\\*      |\n| git                    |      |         |  x  |     |     |             | base\\*      |\n| vim                    |      |         |  x  |     |     |             | base\\*      |\n| nano                   |      |         |  x  |     |     |             | base\\*      |\n| duf                    |      |         |  x  |     |     |             | tool\\*      |\n| exa                    |      |         |  x  |     |     |             | tool\\*      |\n| eza                    |      |         |  x  |     |     |             | tool\\*      |\n| bat                    |      |         |  x  |     |     |             | tool\\*      |\n| ncdu                   |      |         |  x  |     |     |             | tool\\*      |\n| dirmngr                |      |         |  x  |     |     |             | auth_priv\\* |\n| gnupg                  |      |         |  x  |     |     |             | auth_priv\\* |\n| libpam-u2f             |      |         |  x  |     |     |             | auth_priv\\* |\n| libfido2-dev           |      |         |  x  |     |     |             | auth_priv\\* |\n| openssl                |      |         |  x  |     |     |             | cert\\*      |\n| ca-certificates        |      |         |  x  |     |     |             | cert\\*      |\n| apt-transport-https    |      |         |  x  |     |     |             | cert\\*      |\n| rar                    |      |         |  x  |     |     |             | archive\\*   |\n| unrar                  |      |         |  x  |     |     |             | archive\\*   |\n| zip                    |      |         |  x  |     |     |             | archive\\*   |\n| p7zip-full             |      |         |  x  |     |     |             | archive\\*   |\n| xz-utils               |      |         |  x  |     |     |             | archive\\*   |\n| pigz                   |      |         |  x  |     |     |             | archive\\*   |\n| jq                     |      |         |  x  |     |     |             | dev\\*       |\n| iftop                  |      |         |  x  |     |     |             | dev\\*       |\n| htop                   |      |         |  x  |     |     |             | dev\\*       |\n| iotop                  |      |         |  x  |     |     |             | dev\\*       |\n| nvtop                  |      |         |  x  |     |     |             | dev\\*       |\n| powertop               |      |         |  x  |     |     |             | dev\\*       |\n| sysstat                |      |         |  x  |     |     |             | dev\\*       |\n| sysbench               |      |         |  x  |     |     |             | dev\\*       |\n| smem                   |      |         |  x  |     |     |             | dev\\*       |\n| iozone3                |      |         |  x  |     |     |             | dev\\*       |\n| haveged                |      |         |  x  |     |     |             | dev\\*       |\n| ethtool                |      |         |  x  |     |     |             | dev\\*       |\n| net-tools              |      |         |  x  |     |     |             | dev\\*       |\n| iperf3                 |      |         |  x  |     |     |             | dev\\*       |\n| stress                 |      |         |  x  |     |     |             | dev\\*       |\n| stress-ng              |      |         |  x  |     |     |             | dev\\*       |\n| freeglut3-dev          |      |         |  x  |     |     |             | build\\*     |\n| cmake                  |      |         |  x  |     |     |             | build\\*     |\n| g++                    |      |         |  x  |     |     |             | build\\*     |\n| build-essential        |      |         |  x  |     |     |             | build\\*     |\n| autoconf               |      |         |  x  |     |     |             | build\\*     |\n| pkg-config             |      |         |  x  |     |     |             | build\\*     |\n| mesa-utils             |      |         |  x  |     |     |             | build\\*     |\n| libgl1-mesa-dev        |      |         |  x  |     |     |             | libs\\*      |\n| libegl1-mesa-dev       |      |         |  x  |     |     |             | libs\\*      |\n| libgles2-mesa          |      |         |  x  |     |     |             | libs\\*      |\n| libgles2-mesa-dev      |      |         |  x  |     |     |             | libs\\*      |\n| libnet1-dev            |      |         |  x  |     |     |             | libs\\*      |\n| libnet1                |      |         |  x  |     |     |             | libs\\*      |\n| libpcap0.8-dev         |      |         |  x  |     |     |             | libs\\*      |\n| libpcap0.8             |      |         |  x  |     |     |             | libs\\*      |\n| libpcap-dev            |      |         |  x  |     |     |             | libs\\*      |\n| libssl-dev             |      |         |  x  |     |     |             | libs\\*      |\n| zlib1g-dev             |      |         |  x  |     |     |             | libs\\*      |\n| libxml2-dev            |      |         |  x  |     |     |             | libs\\*      |\n| libxslt1-dev           |      |         |  x  |     |     |             | libs\\*      |\n| libffi-dev             |      |         |  x  |     |     |             | libs\\*      |\n| libpq-dev              |      |         |  x  |     |     |             | libs\\*      |\n| libgirepository1.0-dev |      |         |  x  |     |     |             | libs\\*      |\n| libgpgme-dev           |      |         |  x  |     |     |             | libs\\*      |\n| libboost-dev           |      |         |  x  |     |     |             | libs\\*      |\n| php                    |      |         |  x  |     |     |             | php\\*       |\n| php-gmp                |      |         |  x  |     |     |             | php\\*       |\n| php-curl               |      |         |  x  |     |     |             | php\\*       |\n| php-intl               |      |         |  x  |     |     |             | php\\*       |\n| php-mbstring           |      |         |  x  |     |     |             | php\\*       |\n| php-xmlrpc             |      |         |  x  |     |     |             | php\\*       |\n| php-mysql              |      |         |  x  |     |     |             | php\\*       |\n| php-gd                 |      |         |  x  |     |     |             | php\\*       |\n| php-xml                |      |         |  x  |     |     |             | php\\*       |\n| php-zip                |      |         |  x  |     |     |             | php\\*       |\n| lua                    |      |         |  x  |     |     |             | dev         |\n| jre_headless           |      |         |  x  |     |     |      x      | dev         |\n| jdk                    |      |         |  x  |     |     |      x      | dev         |\n| ant                    |      |         |  x  |     |     |             | dev         |\n| maven                  |      |         |  x  |     |     |             | dev         |\n| gradle                 |      |         |  x  |     |     |             | dev         |\n| snap                   |      |         |  x  |     |     |             | system      |\n| qemu_guest_agent       |      |         |  x  |     |     |             | system      |\n| rasp_pi_pkg            |      |         |  x  |     |     |             | system      |\n| resolvconf             |      |         |  x  |     |     |             | vpn         |\n| wireguard              |      |         |  x  |     |     |             | vpn         |\n| openvpn\\*              |      |         |  x  |     |     |             | vpn         |\n| openconnect            |      |         |  x  |     |     |             | vpn         |\n| latex\\*                |      |         |  x  |     |     |             | office      |\n| pandoc\\*               |      |         |  x  |     |     |             | office      |\n| john_the_ripper        |  x   |  TODO   |  x  |     |     |             | pen         |\n| nmap                   |  x   |  TODO   |  x  |     |     |             | pen         |\n| juju                   |  x   |         |     |     |     |             | sys         |\n| maas                   |  x   |         |     |     |     |             | sys         |\n| microk8s               |  x   |         |     |     |     |             | sys         |\n| kubectl                |  x   |         |     |     |     |             | sys         |\n| helm                   |  x   |         |     |     |     |             | sys         |\n| multipass              |  x   |         |     |     |     |             | sys         |\n| btop                   |  x   |         |     |     |     |             | sys         |\n| glow                   |  x   |         |     |     |     |             | sys         |\n| go                     |  x   |         |     |     |     |             | dev         |\n| httpie                 |  x   |         |     |     |     |             | dev         |\n| node                   |  x   |         |     |     |     |             | dev         |\n| openjdk                |  x   |         |     |     |     |             | dev         |\n| openjfx                |  x   |         |     |     |     |             | dev         |\n| ruby                   |  x   |         |     |     |     |             | dev         |\n| rust                   |  x   |         |     |     |     |             | dev         |\n| shellcheck             |  x   |         |     |     |     |             | dev         |\n| git                    |      |         |  x  |     |     |      x      | sys         |\n| zsh                    |      |         |  x  |     |     |      x      | sys         |\n| tmux                   |      |         |     |     |     |      x      | sys         |\n| nvim                   |      |         |     |     |     |      x      | sys         |\n| python\\*               |      |         |  x  |     |     |             | dev         |\n| python pip\\*           |      |         |  x  |     |     |             | dev         |\n| python venv\\*          |      |         |  x  |     |     |             | dev         |\n| python dev\\*           |      |         |  x  |     |     |             | dev         |\n| s_tui                  |      |         |     |  x  |     |             | sys         |\n| virtualenv             |      |         |     |  x  |     |             | dev         |\n| ruff                   |      |         |     |  x  |     |             | dev         |\n| autopep8               |      |         |     |  x  |     |             | dev         |\n| black                  |      |         |     |  x  |     |             | dev         |\n| mypy                   |      |         |     |  x  |     |             | dev         |\n| pre_commit             |      |         |     |  x  |     |             | dev         |\n| openconnect_sso        |      |         |     |  x  |     |             | sys         |\n| ansible\\*              |      |         |     |  x  |     |             | sys         |\n| kompose                |      |         |     |     |  x  |             | dev         |\n| act                    |      |         |     |     |  x  |             | dev         |\n\n## Dependencies\n\nDeveloped and testes with Ansible 2.14.4\n\n## Example Playbook\n\n```yml\n- hosts: servers\n  roles:\n    - role: install_server\n      clients:\n        - name: \"{{ ansible_user }}\"\n          dev: true # will used for install additional services per user as (git|zsh|tmux|nvim|python|go|npm)\n          updateOrCreate: false\n      install_server_service_name: \"{{ service_name }}\"\n      install_server_git_user: \"{{ ansible_user }}\"\n      install_server_git_email: \"{{ ansible_user }}\"\n      install_server_config: [] # see example list above\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmvladislav%2Fansible-install-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmvladislav%2Fansible-install-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmvladislav%2Fansible-install-server/lists"}