{"action":"created","comment":{"url":"https://api.github.com/repos/wso2/ansible-apim/pulls/comments/216728965","pull_request_review_id":154279822,"id":216728965,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxNjcyODk2NQ==","diff_hunk":"@@ -1,108 +1,116 @@\n-## WSO2 API Manager 2.2.0 \n-## Ansible Playbook\n-\n-Ansible is a modern IT automation tool which makes our life easier by managing our servers for us . We just need to define the configuration in which we are interested and Ansible will go ahead and do it for us , be it installing a package or configuring a server application or even restarting a service . Ansible is always ready to manage our servers .\n-Read more information about ansible and its documentation  here.\n-Ansible manages machines in an agent-less manner . Ansible doesn’t have an additional security infrastructure, so it’s easy to deploy. And also we don't need to install anything on the client's end . However both push and pull mode are supported . It is a security focus tool . It uses OpenSSH as transport- protocol.\n-Ansible scripts commonly known as playbooks , are written in YAML and that allow you to describe your automation jobs in a way that approaches in plain English . \n-\n-The  Ansible playbook includes the installation and some  configurations such as  distributed database configuration, enable clustering, standalone h2 database configurations, API manager configuration, axis2 configuration, broker, user_manager configurations, Deploying WSO2 API-M  in a distributed setup  for WSO2 API manager.\n-![architecture of ansible](images/architecture.jpg)\n-\n-\n-**An Overview of Ansible Components**\n-The following are some of term definitions used elsewhere in the Ansible\n-- **Inventory**:A file (by default, Ansible uses a simple INI format) that describes Hosts and Groups in Ansible. Inventory can also be provided via an Inventory Script (sometimes called an “External Inventory Script”).\n-- **Playbook**:Playbooks are the language by which Ansible orchestrates, configures, administers, or deploys systems.\n-- **Module**:    Modules are the units of work that Ansible ships out to remote machines. Modules are kicked off by either /usr/bin/ansible or /usr/bin/ansible-playbook (where multiple tasks use lots of different modules in conjunction). Modules can be implemented in any language, including Perl, Bash, or Ruby – but can leverage some useful communal library code if written in Python. Modules just have to return JSON. Once modules are executed on remote machines, they are removed, so no long running daemons are used. Ansible refers to the collection of available modules as a library.\n-\n-\n-### How to Contribute\n-Supporting Operating System \n-Ubuntu 16.04\n-\n-Supporting Ansible Version\n-Ansible 2.4.3.0\n-\n-\n-### Instructions\n-\n-**Install & Start Ansible**\n-Before install Ansible, we want to check python is available or not. If it is not available then install the python.The easiest way to install Ansible on a Debian or Ubuntu system is to use the official apt package.\n-        \n-        sudo apt-add-repository -y ppa:ansible/ansible\n-        sudo apt-get update\n-        sudo apt-get install -y ansible\n-\n-Once Ansible is installed, make sure it’s working properly by entering ansible --version on the command line.\n-       \n-        ansible --version\n-\n-**Generate SSH Public Key**\n-f you do not already have an SSH key pair that you would like to use for Ansible administration, we can create one now on your Ansible VPS.\n-        ssh-keygen\n-Do not type anything. Just press enter to continue.\n-\n-        ssh-add ~/.ssh/id_rsa\n-        cd ~/.ssh/\n-        cp id_rsa.pub authorized_keys\n-        chmod 644 authorized_keys\n-\n-Exit from the terminal and if you want to check again is SSH key is available or not then you \n-\n-        cd ~/.ssh\n-\n-id_rsa is avialable in your terminal then you successfully set the SSH key.\n-\n-**SSH Connection**\n-Ansible communicates with remote machines over SSH. It uses SSH to connect to servers and run the configured Tasks. While it certainly has the ability to handle password-based SSH authentication, SSH keys help keep things simple. \n-By default, Ansible 1.3 and later will try to use native OpenSSH  for remote communication  when possible. Ansible , by default  assuming we’re using SSH keys. \n-Ansible has a default inventory file (etc/ansible/hosts) are used to define which remote servers will be managing. Our public SSH key should be located in authorized_keys on remote systems.\n-![ssh connection](images/ssh_connection.png)\n-\n-**Inventory**\n-By default, Ansible looks for the inventory file at /etc/ansible/hosts. Inside the inventory file, name of group is enclosed in square brackets. Server names can be their DNS name or IP addresses.\n-\n-\t\t[webservers]\n-\t\t10.100.4.205\n-\t\t192.168.122.201\n-\n-Once inventory hosts are listed, variables can be assigned to them in simple text files (in a subdirectory called ‘group_vars/’ or ‘host_vars/’ or directly in the inventory file.)\n-\n-### Create the role Framework\n-Ansible roles are an optional feature to take advantage of, but if we plan on using Ansible extensively, it is highly recommended that you explore this functionality. Not only will it keep your host-level configuration clean and readable, it will also allow you to easily reuse code and implement your changes in a modular fashion.\n-Files Handlers Meta Templates Tasks Vars are the directories that will contain all of the code to implement our configuration. We don’t use all of the directories, so in real practice, we don’t need to create all of these directories.\n-This is what they are all for:\n-- **Files**:This directory contains regular files that need to be transferred to the hosts you are configuring for this role. This may also include script files to run.\n-- **Handlers**: All handlers that were in your playbook previously can now be added into this directory.\n-- **Meta**: This directory can contain files that establish role dependencies. You can list roles that must be applied before the current role can work correctly.\n-- **Templates**: You can place all files that use variables to substitute information during creation in this directory.\n-- **Tasks**: This directory contains all of the tasks that would normally be in a playbook. These can reference files and templates contained in their respective directories without using a path.\n-- **Vars**: Variables for the roles can be specified in this directory and used in your configuration files.\n-\n-Within all of the directories but the \"files\" and \"templates\", if a file called main.yml exists, its contents will be automatically added to the playbook that calls the role.\n-\n-### Configuration management with Ansible\n-Ansible templates directory is very useful for configuring the WSO2 API MANAGER with lots of changes per configuration files. It can also helpful when trying to build out a big extent configurations automatically by using dynamic / static variables inside  the vars directory.\n-![configuration management of wso2am](images/cofiguration.png)\n-\n-When we want to make any changes in the wso2am-2.2.0 , in Ansible the customer go into /etc/ansible/roles/apim/vars and open the main.yml file via vim main.yml in the vim editor and make any changes which they want for their profile. The profiles of wso2am are mentioned in the Ansible script as  “api_store, api_publisher, traffic_manager, key_manager,  gateway” \n-\n-\n-### Connect the database\n-Here we used the mysql database. That database was created in a machine and linked to the other machines.\n-Original machine had the database and it gave the permission to the other machine through this command\n-       \n-        Mysql -u root -p;\n-        ALTER USER ‘username’@’%’ IDENTIFIED BY ‘password’;\n-        Flush privileges;\n-        grant all on *.* to 'root'@'%';\n-        flush privileges;\n-The client accessed through the \n-        \n-        mysql -h <IP_ADDRESS_OF_REMOTE_HOST> -u <USERNAME> -p\n-        Eg: mysql -h 10.100.4.205 -u root -p\n-\n-Here the client also wanted to know the password of the mysql of the original.\n-\n-\n+# WSO2 API Manager Ansible scripts\n+\n+This repository contains the Ansible scripts for installing and configuring WSO2 API Manager.\n+\n+## Supported Operating Systems\n+\n+- Ubuntu 16.04 or higher\n+\n+## Supported Ansible Versions\n+\n+- Ansible 2.0.0.2\n+\n+## Directory Structure\n+```\n+.\n+├── dev\n+│   ├── group_vars\n+│   │   └── am.yml\n+│   ├── host_vars\n+│   │   ├── am_1.yml\n+│   │   └── am_2.yml\n+│   └── inventory\n+├── docs\n+│   ├── images\n+│   │   ├── API-M-single-node-deployment.png\n+│   │   ├── P-H-1.png\n+│   │   ├── P-H-2.png\n+│   │   ├── P-H-3.png\n+│   │   ├── P-M-1.png\n+│   │   └── P-S-1.png\n+│   ├── Pattern_1.md\n+│   ├── Pattern_2.md\n+│   ├── Pattern_3.md\n+│   ├── Pattern_4.md\n+│   └── Pattern_5.md\n+├── files\n+│   ├── mysql-connector-java-5.1.45-bin.jar\n+│   └── wso2am-linux-installer-x64-2.5.0.deb\n+├── issue_template.md\n+├── LICENSE\n+├── pull_request_template.md\n+├── README.md\n+├── roles\n+│   └── am\n+│       ├── tasks\n+│       │   ├── custom.yml\n+│       │   └── main.yml\n+│       └── templates\n+│           ├── carbon-home\n+│           │   ├── bin\n+│           │   │   └── wso2server.sh.j2\n+│           │   └── repository\n+│           │       └── conf\n+│           │           ├── api-manager.xml.j2\n+│           │           ├── axis2\n+│           │           │   └── axis2.xml.j2\n+│           │           ├── carbon.xml.j2\n+│           │           ├── datasources\n+│           │           │   └── master-datasources.xml.j2\n+│           │           ├── identity\n+│           │           │   └── identity.xml.j2\n+│           │           ├── registry.xml.j2\n+│           │           ├── tomcat\n+│           │           │   └── catalina-server.xml.j2\n+│           │           └── user-mgt.xml.j2\n+│           └── wso2am.service.j2\n+└── site.yml\n+\n+```\n+\n+## Packs to be Copied\n+\n+Copy the following files to `files` directory.\n+\n+1. [WSO2 API Manager 2.5.0 package](https://wso2.com/api-management/install/)\n+2. [mysql-connector-java-5.1.45-bin.jar](https://dev.mysql.com/downloads/connector/j/5.1.html)","path":"README.md","position":184,"original_position":184,"commit_id":"0b34f9b835ab65b285c4b1a059c0639dca13ae36","original_commit_id":"0b34f9b835ab65b285c4b1a059c0639dca13ae36","user":{"login":"chirangaalwis","id":9444555,"node_id":"MDQ6VXNlcjk0NDQ1NTU=","avatar_url":"https://avatars2.githubusercontent.com/u/9444555?v=4","gravatar_id":"","url":"https://api.github.com/users/chirangaalwis","html_url":"https://github.com/chirangaalwis","followers_url":"https://api.github.com/users/chirangaalwis/followers","following_url":"https://api.github.com/users/chirangaalwis/following{/other_user}","gists_url":"https://api.github.com/users/chirangaalwis/gists{/gist_id}","starred_url":"https://api.github.com/users/chirangaalwis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chirangaalwis/subscriptions","organizations_url":"https://api.github.com/users/chirangaalwis/orgs","repos_url":"https://api.github.com/users/chirangaalwis/repos","events_url":"https://api.github.com/users/chirangaalwis/events{/privacy}","received_events_url":"https://api.github.com/users/chirangaalwis/received_events","type":"User","site_admin":false},"body":"@VimukthiPerera the correct link for downloading the defined, archived version of MySQL Connector/J, can be found from [here](https://downloads.mysql.com/archives/c-j/).\r\n\r\nAt present, the latest version is 5.1.47. Hence, we can either state this link as `[MySQL Connector/J](https://dev.mysql.com/downloads/connector/j/5.1.html)` in the README documentation, in order to avoid mentioning the version or we can provide the above mentioned archived version link.","created_at":"2018-09-11T16:12:49Z","updated_at":"2018-09-11T16:37:17Z","html_url":"https://github.com/wso2/ansible-apim/pull/3#discussion_r216728965","pull_request_url":"https://api.github.com/repos/wso2/ansible-apim/pulls/3","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/wso2/ansible-apim/pulls/comments/216728965"},"html":{"href":"https://github.com/wso2/ansible-apim/pull/3#discussion_r216728965"},"pull_request":{"href":"https://api.github.com/repos/wso2/ansible-apim/pulls/3"}}},"pull_request":{"url":"https://api.github.com/repos/wso2/ansible-apim/pulls/3","id":213879391,"node_id":"MDExOlB1bGxSZXF1ZXN0MjEzODc5Mzkx","html_url":"https://github.com/wso2/ansible-apim/pull/3","diff_url":"https://github.com/wso2/ansible-apim/pull/3.diff","patch_url":"https://github.com/wso2/ansible-apim/pull/3.patch","issue_url":"https://api.github.com/repos/wso2/ansible-apim/issues/3","number":3,"state":"open","locked":false,"title":"Add Ansible scripts for API Manager 2.5.0","user":{"login":"VimukthiPerera","id":15902071,"node_id":"MDQ6VXNlcjE1OTAyMDcx","avatar_url":"https://avatars2.githubusercontent.com/u/15902071?v=4","gravatar_id":"","url":"https://api.github.com/users/VimukthiPerera","html_url":"https://github.com/VimukthiPerera","followers_url":"https://api.github.com/users/VimukthiPerera/followers","following_url":"https://api.github.com/users/VimukthiPerera/following{/other_user}","gists_url":"https://api.github.com/users/VimukthiPerera/gists{/gist_id}","starred_url":"https://api.github.com/users/VimukthiPerera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/VimukthiPerera/subscriptions","organizations_url":"https://api.github.com/users/VimukthiPerera/orgs","repos_url":"https://api.github.com/users/VimukthiPerera/repos","events_url":"https://api.github.com/users/VimukthiPerera/events{/privacy}","received_events_url":"https://api.github.com/users/VimukthiPerera/received_events","type":"User","site_admin":false},"body":"## Purpose\r\nResolves https://github.com/wso2/ansible-apim/issues/2\r\n\r\n## Goals\r\nAdd the initial set of Ansible scripts to deploy an all-in-one API Manager node.\r\n\r\n## Security checks\r\n - Followed secure coding standards in http://wso2.com/technical-reports/wso2-secure-engineering-guidelines? no\r\n - Ran FindSecurityBugs plugin and verified report? no\r\n - Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets? yes\r\n\r\n## Test environment\r\nUbuntu 16.04\r\nAnsible 2.0.0.2","created_at":"2018-09-07T10:07:12Z","updated_at":"2018-09-11T16:37:17Z","closed_at":null,"merged_at":null,"merge_commit_sha":"bcb876ae30212edee14f5c0c5b349dfbbb801c92","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/wso2/ansible-apim/pulls/3/commits","review_comments_url":"https://api.github.com/repos/wso2/ansible-apim/pulls/3/comments","review_comment_url":"https://api.github.com/repos/wso2/ansible-apim/pulls/comments{/number}","comments_url":"https://api.github.com/repos/wso2/ansible-apim/issues/3/comments","statuses_url":"https://api.github.com/repos/wso2/ansible-apim/statuses/0b34f9b835ab65b285c4b1a059c0639dca13ae36","head":{"label":"VimukthiPerera:2.5.x","ref":"2.5.x","sha":"0b34f9b835ab65b285c4b1a059c0639dca13ae36","user":{"login":"VimukthiPerera","id":15902071,"node_id":"MDQ6VXNlcjE1OTAyMDcx","avatar_url":"https://avatars2.githubusercontent.com/u/15902071?v=4","gravatar_id":"","url":"https://api.github.com/users/VimukthiPerera","html_url":"https://github.com/VimukthiPerera","followers_url":"https://api.github.com/users/VimukthiPerera/followers","following_url":"https://api.github.com/users/VimukthiPerera/following{/other_user}","gists_url":"https://api.github.com/users/VimukthiPerera/gists{/gist_id}","starred_url":"https://api.github.com/users/VimukthiPerera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/VimukthiPerera/subscriptions","organizations_url":"https://api.github.com/users/VimukthiPerera/orgs","repos_url":"https://api.github.com/users/VimukthiPerera/repos","events_url":"https://api.github.com/users/VimukthiPerera/events{/privacy}","received_events_url":"https://api.github.com/users/VimukthiPerera/received_events","type":"User","site_admin":false},"repo":{"id":144564558,"node_id":"MDEwOlJlcG9zaXRvcnkxNDQ1NjQ1NTg=","name":"ansible-apim","full_name":"VimukthiPerera/ansible-apim","owner":{"login":"VimukthiPerera","id":15902071,"node_id":"MDQ6VXNlcjE1OTAyMDcx","avatar_url":"https://avatars2.githubusercontent.com/u/15902071?v=4","gravatar_id":"","url":"https://api.github.com/users/VimukthiPerera","html_url":"https://github.com/VimukthiPerera","followers_url":"https://api.github.com/users/VimukthiPerera/followers","following_url":"https://api.github.com/users/VimukthiPerera/following{/other_user}","gists_url":"https://api.github.com/users/VimukthiPerera/gists{/gist_id}","starred_url":"https://api.github.com/users/VimukthiPerera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/VimukthiPerera/subscriptions","organizations_url":"https://api.github.com/users/VimukthiPerera/orgs","repos_url":"https://api.github.com/users/VimukthiPerera/repos","events_url":"https://api.github.com/users/VimukthiPerera/events{/privacy}","received_events_url":"https://api.github.com/users/VimukthiPerera/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/VimukthiPerera/ansible-apim","description":null,"fork":true,"url":"https://api.github.com/repos/VimukthiPerera/ansible-apim","forks_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/forks","keys_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/keys{/key_id}","collaborators_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/teams","hooks_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/hooks","issue_events_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/issues/events{/number}","events_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/events","assignees_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/assignees{/user}","branches_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/branches{/branch}","tags_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/tags","blobs_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/git/refs{/sha}","trees_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/git/trees{/sha}","statuses_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/statuses/{sha}","languages_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/languages","stargazers_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/stargazers","contributors_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/contributors","subscribers_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/subscribers","subscription_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/subscription","commits_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/commits{/sha}","git_commits_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/git/commits{/sha}","comments_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/comments{/number}","issue_comment_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/issues/comments{/number}","contents_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/contents/{+path}","compare_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/compare/{base}...{head}","merges_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/merges","archive_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/downloads","issues_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/issues{/number}","pulls_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/pulls{/number}","milestones_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/milestones{/number}","notifications_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/labels{/name}","releases_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/releases{/id}","deployments_url":"https://api.github.com/repos/VimukthiPerera/ansible-apim/deployments","created_at":"2018-08-13T10:28:40Z","updated_at":"2018-08-13T10:28:42Z","pushed_at":"2018-09-11T13:41:10Z","git_url":"git://github.com/VimukthiPerera/ansible-apim.git","ssh_url":"git@github.com:VimukthiPerera/ansible-apim.git","clone_url":"https://github.com/VimukthiPerera/ansible-apim.git","svn_url":"https://github.com/VimukthiPerera/ansible-apim","homepage":null,"size":2944,"stargazers_count":0,"watchers_count":0,"language":"Shell","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"wso2:2.5.x","ref":"2.5.x","sha":"a62d7570d2a3221d4b7b8d7646903d2971c7a91a","user":{"login":"wso2","id":533043,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUzMzA0Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/533043?v=4","gravatar_id":"","url":"https://api.github.com/users/wso2","html_url":"https://github.com/wso2","followers_url":"https://api.github.com/users/wso2/followers","following_url":"https://api.github.com/users/wso2/following{/other_user}","gists_url":"https://api.github.com/users/wso2/gists{/gist_id}","starred_url":"https://api.github.com/users/wso2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wso2/subscriptions","organizations_url":"https://api.github.com/users/wso2/orgs","repos_url":"https://api.github.com/users/wso2/repos","events_url":"https://api.github.com/users/wso2/events{/privacy}","received_events_url":"https://api.github.com/users/wso2/received_events","type":"Organization","site_admin":false},"repo":{"id":130664395,"node_id":"MDEwOlJlcG9zaXRvcnkxMzA2NjQzOTU=","name":"ansible-apim","full_name":"wso2/ansible-apim","owner":{"login":"wso2","id":533043,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUzMzA0Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/533043?v=4","gravatar_id":"","url":"https://api.github.com/users/wso2","html_url":"https://github.com/wso2","followers_url":"https://api.github.com/users/wso2/followers","following_url":"https://api.github.com/users/wso2/following{/other_user}","gists_url":"https://api.github.com/users/wso2/gists{/gist_id}","starred_url":"https://api.github.com/users/wso2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wso2/subscriptions","organizations_url":"https://api.github.com/users/wso2/orgs","repos_url":"https://api.github.com/users/wso2/repos","events_url":"https://api.github.com/users/wso2/events{/privacy}","received_events_url":"https://api.github.com/users/wso2/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/wso2/ansible-apim","description":null,"fork":false,"url":"https://api.github.com/repos/wso2/ansible-apim","forks_url":"https://api.github.com/repos/wso2/ansible-apim/forks","keys_url":"https://api.github.com/repos/wso2/ansible-apim/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wso2/ansible-apim/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wso2/ansible-apim/teams","hooks_url":"https://api.github.com/repos/wso2/ansible-apim/hooks","issue_events_url":"https://api.github.com/repos/wso2/ansible-apim/issues/events{/number}","events_url":"https://api.github.com/repos/wso2/ansible-apim/events","assignees_url":"https://api.github.com/repos/wso2/ansible-apim/assignees{/user}","branches_url":"https://api.github.com/repos/wso2/ansible-apim/branches{/branch}","tags_url":"https://api.github.com/repos/wso2/ansible-apim/tags","blobs_url":"https://api.github.com/repos/wso2/ansible-apim/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wso2/ansible-apim/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wso2/ansible-apim/git/refs{/sha}","trees_url":"https://api.github.com/repos/wso2/ansible-apim/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wso2/ansible-apim/statuses/{sha}","languages_url":"https://api.github.com/repos/wso2/ansible-apim/languages","stargazers_url":"https://api.github.com/repos/wso2/ansible-apim/stargazers","contributors_url":"https://api.github.com/repos/wso2/ansible-apim/contributors","subscribers_url":"https://api.github.com/repos/wso2/ansible-apim/subscribers","subscription_url":"https://api.github.com/repos/wso2/ansible-apim/subscription","commits_url":"https://api.github.com/repos/wso2/ansible-apim/commits{/sha}","git_commits_url":"https://api.github.com/repos/wso2/ansible-apim/git/commits{/sha}","comments_url":"https://api.github.com/repos/wso2/ansible-apim/comments{/number}","issue_comment_url":"https://api.github.com/repos/wso2/ansible-apim/issues/comments{/number}","contents_url":"https://api.github.com/repos/wso2/ansible-apim/contents/{+path}","compare_url":"https://api.github.com/repos/wso2/ansible-apim/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wso2/ansible-apim/merges","archive_url":"https://api.github.com/repos/wso2/ansible-apim/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wso2/ansible-apim/downloads","issues_url":"https://api.github.com/repos/wso2/ansible-apim/issues{/number}","pulls_url":"https://api.github.com/repos/wso2/ansible-apim/pulls{/number}","milestones_url":"https://api.github.com/repos/wso2/ansible-apim/milestones{/number}","notifications_url":"https://api.github.com/repos/wso2/ansible-apim/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wso2/ansible-apim/labels{/name}","releases_url":"https://api.github.com/repos/wso2/ansible-apim/releases{/id}","deployments_url":"https://api.github.com/repos/wso2/ansible-apim/deployments","created_at":"2018-04-23T08:24:52Z","updated_at":"2018-04-25T13:29:39Z","pushed_at":"2018-09-11T13:41:11Z","git_url":"git://github.com/wso2/ansible-apim.git","ssh_url":"git@github.com:wso2/ansible-apim.git","clone_url":"https://github.com/wso2/ansible-apim.git","svn_url":"https://github.com/wso2/ansible-apim","homepage":null,"size":206,"stargazers_count":0,"watchers_count":0,"language":"Shell","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":2,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":2,"open_issues":2,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/wso2/ansible-apim/pulls/3"},"html":{"href":"https://github.com/wso2/ansible-apim/pull/3"},"issue":{"href":"https://api.github.com/repos/wso2/ansible-apim/issues/3"},"comments":{"href":"https://api.github.com/repos/wso2/ansible-apim/issues/3/comments"},"review_comments":{"href":"https://api.github.com/repos/wso2/ansible-apim/pulls/3/comments"},"review_comment":{"href":"https://api.github.com/repos/wso2/ansible-apim/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/wso2/ansible-apim/pulls/3/commits"},"statuses":{"href":"https://api.github.com/repos/wso2/ansible-apim/statuses/0b34f9b835ab65b285c4b1a059c0639dca13ae36"}},"author_association":"NONE"}}
{"actor":{"display_login":"chirangaalwis"}}