/ansible-teamcity-server

Ansible role for automatic setup of TeamCity Server

MIT LicenseMIT

TeamCity Server

Build Status

This role will install and configure TemCity Server - CI tool from JetBrains. I created this role because I needed to have a fully automated TeamCity setup. This role will:

  1. Install TeamCity
  2. Setup database connection (local/mysql)
  3. Setup TeamCity default admin user - teamcity
  4. Accept license

As a result, this role will setup fully working TeamCity Server. Feel free to use it along with my TeamCity Server role - matisku.teamcity-agent.

Requirements

  1. ansiblebit.oracle-java - Java is required on TeamCity Server

Role Variables

Variable name Default value Description
teamcity_server_version 10.0.4 TeamCity version to install
teamcity_server_sha256 a565913b3dc40262072e7d92a3e381d2eace8d6bf018ffaf67f335252b28b2c1 sha256 for TeamCity package
teamcity_server_su_user teamcity Admin user name for TeamCity
teamcity_server_su_password teamcity Admin user password for TeamCity
teamcity_server_install_dir /opt TeamCity unpack dir
teamcity_server_dir {{ teamcity_server_install_dir }}/TeamCity TeamCity install dir
teamcity_server_data_dir {{ teamcity_server_dir }}/BuildServer TeamCity data/conf/plugins dir
teamcity_server_plugins_dir {{ teamcity_server_data_dir }}/plugins TeamCity plugins dir
teamcity_server_license_keys `` TeamCity Licenses
teamcity_server_mysql_server_connector_version 5.1.40 MySQL connector version
teamcity_server_mysql_connector_dir /opt/mysql-connector MySQL connector install dir
teamcity_server_mysql_server_db_user teamcity TeamCity MySQL user name
teamcity_server_mysql_server_db_password teamcity TeamCity MySQL user password
teamcity_server_mysql_server_db_name teamcity TeamCity MySQL database
teamcity_server_db_type local Database version: local or mysql
teamcity_server_mysql_server_database_url localhost MySQL database URL
teamcity_server_mysql_server_database_port 3306 MySQL database port
teamcity_server_mysql_server_jdbc_dir {{ teamcity_server_data_dir }}/lib/jdbc MySQL JDBC driver location

Dependencies

This role depends on java role.

Example Playbook

Example playbook:

- hosts: teamcity-servers
  become: yes 
  roles:
    - matisku.teamcity-server

Author Information

This role was created by Mateusz Trojak for Brainly. We are using this role for company CI automation with easy failover mechanism.

License

Copyright © 2017 Mateusz Trojak. See LICENSE for details.