Create a `config.py` in the same directory as the sources. The structure of the
configuration file is as follows:
- client_secret_file = 'CLIENT_SECRET_FILE.json'
- jenkins_credentials = {
- 'username': 'JENKINS_USERNAME',
- 'password': 'JENKINS_PASSWORD',
- }
+```python
+client_secret_file = 'CLIENT_SECRET_FILE.json'
+build_listener_url = 'BUILD_LISTENER_URL'
+jenkins_url = 'JENKINS_URL'
+jenkins_credentials = {
+ 'username': 'JENKINS_USERNAME',
+ 'password': 'JENKINS_PASSWORD',
+}
+```
The client secret file comes from the Gmail API page of the [Google Developers
Console](https://console.developers.google.com/). The Jenkins credentials are
To launch the services:
- $ python build_listener.py >build.log 2>&1 &
- $ python gmail_listener.py >mail.log 2>&1 &
+```bash
+$ python build_listener.py >build.log 2>&1 &
+$ python gmail_listener.py >mail.log 2>&1 &
+```
The mail listener will direct your browser to an authentication page for the
Gmail API.
def clean_project(gerrit_info, dry_run):
username = bionicbb.config.jenkins_credentials['username']
password = bionicbb.config.jenkins_credentials['password']
- # TODO(danalbert): Move Jenkins server URL into config.py.
- jenkins_url = 'http://bionicbb.mtv.corp.google.com:8080'
+ jenkins_url = bionicbb.config.jenkins_url
jenkins = jenkinsapi.api.Jenkins(jenkins_url, username, password)
build = 'clean-bionic-presubmit'
username = bionicbb.config.jenkins_credentials['username']
password = bionicbb.config.jenkins_credentials['password']
- jenkins_url = 'http://bionicbb.mtv.corp.google.com:8080'
+ jenkins_url = bionicbb.config.jenkins_url
jenkins = jenkinsapi.api.Jenkins(jenkins_url, username, password)
project = gerrit_info['Project']
'changeid': gerrit_info['Change-Id'],
'patchset': gerrit_info['PatchSet']
}
- # TODO(danalbert): Move the URL for the build listener service into
- # config.py.
- url = 'http://bionicbb.mtv.corp.google.com:5000/drop-rejection'
+ url = '{}/{}'.format(bionicbb.config.build_listener_url, 'drop-rejection')
headers = {'Content-Type': 'application/json;charset=UTF-8'}
if not dry_run:
try: