diff --git a/Output-code/mysql-play.yml b/Output-code/mysql-play.yml new file mode 100644 index 0000000000000000000000000000000000000000..fcbfa712191d80ce3556782264d0a110c8649fa9 --- /dev/null +++ b/Output-code/mysql-play.yml @@ -0,0 +1,99 @@ +--- +- hosts: DB + become: yes + vars_files: + - vars2.yml + + pre_tasks: + - name: Install MySQL + apt: name={{ item }} update_cache=yes cache_valid_time=3600 state=present + with_items: + - mysql-server + - mysql-client + - python-setuptools + - python-mysqldb + - libmysqlclient-dev + - python3-pip + + - name: Remove a symbolic link + ansible.builtin.file: + path: /usr/bin/python + state: absent + + - name: Create a symbolic link + ansible.builtin.file: + src: /usr/bin/python3 + dest: /usr/bin/python + state: link + register: result + retries: 3 + delay: 5 + until: result is not failed + + - name: Create a symbolic link + ansible.builtin.file: + src: /usr/bin/pip3 + dest: /usr/bin/pip + state: link + register: result + retries: 3 + delay: 5 + until: result is not failed + + - name: Install Python packages + pip: "name={{ item }} state=present" + with_items: + - PyMySQL + + - name: edit firewall + service: + name: ufw + state: stopped + enabled: false + + tasks: + - name: Start the MySQL service + service: + name: mysql + state: started + enabled: true + + - name: Creation mysql file configuration + file: + path: "/root/.my.cnf" + state: touch + + - name: Editing configuration file + replace: + path: /etc/mysql/mysql.conf.d/mysqld.cnf + regexp: '(.*bind-addres.*)' + replace: '#\1' + + - name: Restart MySQL + service: name=mysql state=restarted + + - name: Ensure MySQL started + service: + name: mysql + state: started + + - name: update mysql password for application account + mysql_user: + login_unix_socket: /var/run/mysqld/mysqld.sock + name: "{{ db_user }}" + host: "%" + password: "{{ db_password }}" + state: present + login_user: root + login_password: test + check_implicit_admin: yes + priv: "*.*:ALL,GRANT" + + - name: Add the application database + mysql_db: + name: "{{ db_name }}" + state: present + login_unix_socket: /var/run/mysqld/mysqld.sock + + - name: Restart MySQL + service: name=mysql state=restarted diff --git a/Output-code/mysql-vars.yml b/Output-code/mysql-vars.yml new file mode 100644 index 0000000000000000000000000000000000000000..918bfb5f114ba0358f4f1d357b721208f055f10c --- /dev/null +++ b/Output-code/mysql-vars.yml @@ -0,0 +1,4 @@ +--- +db_user: app1user +db_password: app1user +db_name: app1 \ No newline at end of file diff --git a/Output-code/outputvm.tf b/Output-code/outputvm.tf index 7252d5b59a4d1dc7d5fa52ef1b13d7ea578d1ca0..fb8865784b64f2b332ce26da5cfb1df5e94cffef 100644 --- a/Output-code/outputvm.tf +++ b/Output-code/outputvm.tf @@ -1,4 +1,20 @@ +data "aws_ami" "ami1" { + #executable_users = ["self"] + most_recent = true + name_regex = "ubuntu*" + #owners = ["self"] + + owners = ["099720109477"] # Canonical +} +resource "aws_instance" "instance1" { + ami = data.aws_ami.ami1.id + instance_type = "t2.micro" + tags = { + Name = "firstvm" + } +} + data "aws_ami" "ami2" { #executable_users = ["self"] most_recent = true diff --git a/Output-code/wordpress-play.yml b/Output-code/wordpress-play.yml index eee5b387b3fe6410ca431947d532735673a8ab4b..ae5599ae9ab9989356c71246e9ff12f1bd33df8c 100644 --- a/Output-code/wordpress-play.yml +++ b/Output-code/wordpress-play.yml @@ -3,21 +3,58 @@ become: yes vars_files: - - wordpress-vars.yml + - vars.yml pre_tasks: - name: "Install packages" apt: "name={{ item }} state=present" with_items: + - python3 + - python3-pip - docker - docker.io + - name: Remove a symbolic link + ansible.builtin.file: + path: /usr/bin/python + state: absent + + - name: Create a symbolic link + ansible.builtin.file: + src: /usr/bin/python3 + dest: /usr/bin/python + state: link + register: result + retries: 3 + delay: 5 + until: result is not failed + + - name: Create a symbolic link + ansible.builtin.file: + src: /usr/bin/pip3 + dest: /usr/bin/pip + state: link + register: result + retries: 3 + delay: 5 + until: result is not failed + - name: "Install Python packages" pip: "name={{ item }} state=present" with_items: - docker + - name: edit firewall + service: + name: ufw + state: stopped + enabled: false + tasks: + - name: Create a volume + community.docker.docker_volume: + name: mydata + - name: Start a WP container community.docker.docker_container: name: wordpress @@ -31,5 +68,5 @@ WORDPRESS_TABLE_PREFIX: "{{WORDPRESS_TABLE_PREFIX}}" ports: - "8080:80" - volumes_from: + volumes: - mydata \ No newline at end of file diff --git a/__pycache__/ansibleBuilder.cpython-39.pyc b/__pycache__/ansibleBuilder.cpython-39.pyc index 846aa367d4eed39e03bc9b0866a4196580b375a9..8a5944766034d7c4ed1d041f5216473e39dca534 100644 Binary files a/__pycache__/ansibleBuilder.cpython-39.pyc and b/__pycache__/ansibleBuilder.cpython-39.pyc differ diff --git a/__pycache__/ansibleUtils.cpython-39.pyc b/__pycache__/ansibleUtils.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7071c72d5feeea12f8fcc2bafb97aad4d896ded6 Binary files /dev/null and b/__pycache__/ansibleUtils.cpython-39.pyc differ diff --git a/__pycache__/aws.cpython-39.pyc b/__pycache__/aws.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..832a1cf7c8084844fa0bd7f7307559bccc153cea Binary files /dev/null and b/__pycache__/aws.cpython-39.pyc differ diff --git a/__pycache__/terraformBuilder.cpython-39.pyc b/__pycache__/terraformBuilder.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7dbd1d0d2b16a694a8d2ecade079a9045c0dec54 Binary files /dev/null and b/__pycache__/terraformBuilder.cpython-39.pyc differ diff --git a/__pycache__/terraformUtils.cpython-39.pyc b/__pycache__/terraformUtils.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fd030dc8d1d712ea38b89202dd3e8bf1670dc185 Binary files /dev/null and b/__pycache__/terraformUtils.cpython-39.pyc differ