| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- # - name: Remove postfix at first
- # become: true
- # apt:
- # name: postfix
- # state: absent
- # purge: yes
- # - name: Backup /etc/apt/sources.list.d
- # become: true
- # copy:
- # src: /etc/apt/sources.list.d
- # dest: "{{ app_backup }}/etc_apt_sources_list_d"
- # remote_src: yes
- # backup: yes
- # - name: Delete /etc/apt/sources.list.d
- # become: true
- # file:
- # state: absent
- # path: /etc/apt/sources.list.d
- - name: add PPA for Ubuntu Toolchain
- become: true
- ansible.builtin.apt_repository:
- repo: ppa:ubuntu-toolchain-r/test
- when: ansible_distribution == 'Ubuntu'
- - name: Update system
- become: true
- apt:
- upgrade: yes
- update_cache: yes
- cache_valid_time: 3600
- - name: Install dependicy packages
- become: true
- apt:
- pkg:
- - apt-transport-https
- - software-properties-common
- - gnupg
- - openssh-server
- - openssh-client
- - sshpass
- - wpasupplicant
- - rsync
- - at
- - sysstat
- - libtool
- - ethtool
- - dnsutils
- - dnsmasq
- - uuid-runtime
- - lshw
- - tcpdump
- - lm-sensors
- - hddtemp
- - dmidecode
- - net-tools
- - iputils-arping
- - iputils-ping
- - telnet
- - vim
- - git
- - pwgen
- - locales
- - ntpdate
- - imagemagick
- - mpg123
- - ffmpeg
- - sqlite3
- - tree
- - alsa-utils
- - pulseaudio
- - zsh
- - wget
- - curl
- - zip
- - unzip
- - nginx
- - certbot
- - openvpn
- - snmpd
- - systemd-cron
- - systemd-timesyncd
- - screen
- - tmux
- - hugo
- - python3
- - python3-pip
- - python3-distutils
- - python3-dev
- - libssl-dev
- - libpq-dev
- - libmysqlclient-dev
- - include: locales.yml
- - name: Set default editor to vim
- become: true
- shell: update-alternatives --set editor /usr/bin/vim.basic
- - name: Set timezone
- become: true
- shell: timedatectl set-timezone Asia/Shanghai
- - name: Set git rebase mode
- become: true
- shell: git config --global pull.rebase false
- - include: zsh.yml
- # ---------------------------------------------------
- - name: check if friendlyelec
- ansible.builtin.stat:
- path: /etc/friendlyelec-release
- register: app_os_friendlyelec
- - include: friendly-core.yml
- when: app_os_friendlyelec.stat.islnk is defined and app_os_friendlyelec.stat.isreg
- - name: check if armbian
- ansible.builtin.stat:
- path: /etc/armbian-release
- register: app_os_armbian
- - include: armbian.yml
- when: app_os_armbian.stat.islnk is defined and app_os_armbian.stat.isreg
- - include: raspbian.yml
- when: ansible_distribution == 'Raspbian'
- - include: pi.yml
- when: ansible_distribution == 'Raspbian' or (app_os_armbian.stat.islnk is defined and app_os_armbian.stat.isreg) or (app_os_friendlyelec.stat.islnk is defined and app_os_friendlyelec.stat.isreg)
- # ---------------------------------------------------
- - name: enable nginx service
- become: true
- ansible.builtin.systemd:
- name: nginx
- enabled: yes
- masked: no
- - name: enable cron service
- become: true
- ansible.builtin.systemd:
- name: cron-target
- enabled: yes
- masked: no
- - name: enable certbot sync
- ansible.builtin.cron:
- name: "renew certbot"
- special_time: monthly
- job: "/usr/bin/certbot renew --force-renewal"
- - name: enable ssh service
- become: true
- ansible.builtin.systemd:
- name: ssh
- enabled: yes
- masked: no
- - name: enable systemd-timesyncd service
- become: true
- ansible.builtin.systemd:
- name: systemd-timesyncd
- enabled: yes
- masked: no
- - include: clean.yml
|