---
# SPDX-FileCopyrightText: 2020 Open Networking Foundation <info@opennetworking.org>
# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0

- name: "Provision Packages for Jenkins image"
  hosts: default
  become: true

  tasks:
    - name: Add Java Amazon Corretto Jdk repo GPG key
      apt_key:
        url: https://apt.corretto.aws/corretto.key
        state: present

    - name: Add Java Amazon Corretto Jdk repo
      apt_repository:
        repo: deb https://apt.corretto.aws stable main
        state: present

    - name: Install apt packages
      apt:
        name:
          - "facter"
          - "libxml2-utils"
          - "bzip2"
          - "curl"
          - "ebtables"
          - "enchant"
          - "ethtool"
          - "git"
          - "graphviz"
          - "jq"
          - "kafkacat"
          - "less"
          - "libpcap-dev"
          - "libxml2-utils"
          - "maven"
          - "ruby"
          - "screen"
          - "socat"
          - "ssh"
          - "sshpass"
          - "zip"
          # below four packages are required by npm
          - "nodejs"
          - "libssl1.0-dev"
          - "nodejs-dev"
          - "node-gyp"
          - "npm"
          - "java-1.8.0-amazon-corretto-jdk"
          - "java-11-amazon-corretto-jdk"
        state: "present"
        update_cache: true
        cache_valid_time: 3600

    - name: Download repo launcher
      get_url:
        url: "https://gerrit.googlesource.com/git-repo/+/refs/tags/v2.12.2/repo?format=TEXT"
        checksum: "sha256:f5afffcc9afae128efd2b325ff19544a0b78acceb33a2edf368ce2de94e8c33e"
        dest: /tmp/repo.b64

    - name: Decode and make repo launcher executable
      shell:
        cmd: |
          base64 --decode /tmp/repo.b64 > /usr/local/bin/repo;
          chmod 755 /usr/local/bin/repo
        creates: /usr/local/bin/repo

    - name: Download helm archive
      get_url:
        url: "https://get.helm.sh/helm-v3.5.2-linux-amd64.tar.gz"
        checksum: "sha256:01b317c506f8b6ad60b11b1dc3f093276bb703281cb1ae01132752253ec706a2"
        dest: "/tmp/helm.tgz"

    - name: Unarchive helm
      unarchive:
        src: "/tmp/helm.tgz"
        dest: "/tmp"
        remote_src: true

    - name: Install helm binary
      copy:
        src: /tmp/linux-amd64/helm
        dest: /usr/local/bin/helm
        mode: "0755"
        remote_src: true

    - name: Download/install kubectl binary
      get_url:
        url: "https://storage.googleapis.com/kubernetes-release/release/v1.18.15/bin/linux/amd64/kubectl"
        checksum: "sha256:eb5a5dd0a72795942ab81d1e4331625e80a90002c8bb39b2cb15aa707a3812c6"
        dest: /usr/local/bin/kubectl
        mode: "0755"

    - name: load /etc/docker/daemon.json from file
      slurp:
        src: /etc/docker/daemon.json
      register: imported_var

    - name: append more key/values
      set_fact:
        imported_var: "{{ imported_var.content|b64decode|from_json | default([]) | combine({ 'registry-mirrors': ['https://mirror.registry.opennetworking.org'] }) }}"

    - name: write var to file
      copy:
        content: "{{ imported_var | to_nice_json }}"
        dest: /etc/docker/daemon.json

    - name: restart Docker service
      systemd:
        name: docker
        state: restarted
        daemon_reload: true

    - name: Install multi python3 packages with version specifiers
      pip:
        name:
          - ansible
          - ansible-lint
          - docker
          - docker-compose
          - git-review
          - httpie
          - netaddr
          - pylint
          - tox
          - twine
          - virtualenv
          - yamllint
        executable: pip3
    - name: Install multi python2 packages with version specifiers
      pip:
        name:
          - Jinja2
          - coverage
          - certifi
          - cryptography
          - git+https://github.com/linkchecker/linkchecker.git@v9.4.0
          - graphviz
          - isort
          - more-itertools==5.0.0
          - mock>2.0.0<2.1.0
          - ndg-httpsclient
          - nose2>0.9.0<0.10.0
          - pyopenssl
          - pexpect
          - pyyaml>3.10.0<3.11.0
          - requests>2.14.0<2.15.0
          - robotframework
          - robotframework-httplibrary
          - robotframework-kafkalibrary
          - robotframework-lint
          - robotframework-requests
          - robotframework-sshlibrary
          - six
          - urllib3

    - name: Install multi ruby packages with version specifiers
      gem:
        name: mdl
        version: 0.5.0

    - name: Install gitbook-cli npm package with version specifiers
      npm:
        name: gitbook-cli
        global: true

    - name: Install markdownlint npm package with version specifiers
      npm:
        name: markdownlint
        global: true

    - name: Install typings npm package with version specifiers
      npm:
        name: typings
        global: true

    - name: Download minikube
      get_url:
        url: "https://storage.googleapis.com/minikube/releases/latest/minikube_1.18.0-0_amd64.deb"
        checksum: "sha256:6e3918b601704014f3d0b0a09e3116f1ea528ac255525743a800b5f0b5856622"
        dest: /tmp/minikube.deb

    - name: Install minikube deb
      apt:
        deb: /tmp/minikube.deb

    - name: Download protobuf
      get_url:
        url: "https://github.com/google/protobuf/releases/download/v3.7.0/protoc-3.7.0-linux-x86_64.zip"
        checksum: "sha256:a1b8ed22d6dc53c5b8680a6f1760a305b33ef471bece482e92728f00ba2a2969"
        dest: /tmp/protobuf.zip

    - name: Unarchive protobuf
      unarchive:
        src: "/tmp/protobuf.zip"
        dest: "/usr/local"
        remote_src: true

    - name: Download pandoc
      get_url:
        url: "https://github.com/jgm/pandoc/releases/download/2.10.1/pandoc-2.10.1-1-amd64.deb"
        checksum: "sha256:4515d6fe2bf8b82765d8dfa1e1b63ccb0ff3332d60389f948672eaa37932e936"
        dest: /tmp/pandoc.deb

    - name: Install pandoc deb
      apt:
        deb: /tmp/pandoc.deb

    - name: Download yq
      get_url:
        url: "https://github.com/mikefarah/yq/releases/download/3.4.0/yq_linux_amd64"
        checksum: "sha256:f6bd1536a743ab170b35c94ed4c7c4479763356bd543af5d391122f4af852460"
        dest: /usr/local/bin/yq

    - name: Change yq Permission
      file:
        path: /usr/local/bin/yq
        mode: 0755

    - name: Download hadolint
      get_url:
        url: "https://github.com/hadolint/hadolint/releases/download/v1.18.0/hadolint-Linux-x86_64"
        checksum: "sha256:f9bc9de12438b463ca84e77fde70b07b155d4da07ca21bc3f4354a62c6199db4"
        dest: /usr/local/bin/hadolint

    - name: Change hadolint Permission
      file:
        path: /usr/local/bin/hadolint
        mode: 0755

    - name: Download github-release
      get_url:
        url: "https://github.com/github-release/github-release/releases/download/v0.10.0/linux-amd64-github-release.bz2"
        checksum: "sha256:b360af98188c5988314d672bb604efd1e99daae3abfb64d04051ee17c77f84b6"
        dest: /tmp/github-release.bz2


    # Unarchive target doesn't support the bz2 format
    - name: Unarchive github-release
      shell:
        cmd: |
          bzip2 -d /tmp/github-release.bz2

    - name: Install github-release binary
      copy:
        src: /tmp/github-release
        dest: /usr/local/bin/github-release
        mode: "0755"
        remote_src: true

    - name: Recursively remove download files and folders
      file:
        path: "{{ item }}"
        state: absent
      with_items:
        - /tmp/linux-amd64
        - /tmp/helm.tgz
        - /tmp/minikube.deb
        - /tmp/protobuf.zip
        - /tmp/pandoc.deb
        - /tmp/repo.b64

# [EOF]
