<commit_before>defaults:
    description: defaults for all projects in this file
    salt: '2016.3' # the version of salt these project use
    domain: elifesciences.org
    # addressing within VPC
    intdomain: elife.internal
    # 'lax', 'metrics', 'gateway', etc
    subdomain: null
    # projects with an explicit `repo` attribute support branch deployments with
    # ./bldr deploy
    repo: null
    # repository containing build instructions for this project
    formula-repo: null
    # repo containing project pillar data (credentials typically)
    # only the master-server will have a copy of this and only the master-server
    # will need permissions to clone it
    private-repo: ssh://git@github.com/elifesciences/builder-private
    # default branch to use when creating new instances
    default-branch: master
    # 
    formula-dependencies:
        - https://github.com/elifesciences/builder-base-formula
    aws:
        # find more here: http://cloud-images.ubuntu.com/releases/
        ami: ami-aa15f6c7   # elife 'basebox.2016-05-06'
        region: us-east-1
        vpc-id: vpc-78a2071d  # vpc-id + subnet-id are peculiar to AWS account + region
        subnet-id: subnet-1d4eb46a # elife-public-subnet
        subnet-cidr: '10.0.2.0/24'
        type: t2.small  # ~ $20/mo
        rds:
            # rds defaults only used if an `rds` section present in project
            # explicit database name overrides the one generated at template creation
            multi-az: False
            engine: postgres
            # ensure this matches the version of Postgres you install on server!
            version: '9.4'
            type: db.t2.small
            storage: 5 # GB
            backup-retention: 28 # days
            # two subnets are required in two different availability zones
            # http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html
            subnets:
                # two are required
                # NOTE! the 'dbsubnet-' prefix is important to *builder*
                # it tells us which subnets we can provision RDS within
                - subnet-8eea67d7 # elife-dbsubnet-1
                - subnet-dbc471f0 # elife-dbsubnet-2

        ext:
            # external hdd
            size: 10 # GB
            device: /dev/sdh
    aws-alt:
        fresh:
            description: uses a plain Ubuntu basebox instead of an ami
            ami: ami-9eaa1cf6 # Ubuntu 14.04
    vagrant:
        box: ubuntu/trusty64 # Ubuntu 14.04
        # box-url not needed for boxes hosted on Atlas 
        box-url: null 
        ip: 192.168.33.44
        ram: 1024
        cpus: 2
        cpucap: 100 # percent (vagrant default)
 
basebox:
    aws:
        ami: ami-9eaa1cf6 # Ubuntu 14.04 (correct, but older)
        ports:
            - 22    
    vagrant: {}

master-server:
    # formula-repo for the 'master-server' project should contain the 
    # confidential pillar data, master config and state top file.
    # see: https://github.com/elifesciences/builder-private-example
    formula-repo: ssh://git@github.com/elifesciences/master-server-formula
    aws:
        ports:
            - 22
            - 4506: # salt publish port
                # CIDR of subnet this master will server
                cidr-ip: 10.0.2.0/24 # access via VPC ip range only
            - 4505: # salt return port
                cidr-ip: 10.0.2.0/24
    vagrant: {}

lax:
    subdomain: lax # lax.elifesciences.org
    repo: https://github.com/elifesciences/lax.git
    formula-repo: https://github.com/elifesciences/lax-formula
    aws:
        ports:
            - 22
            - 443
            - 80
    aws-alt:
        end2end:
            description: RDS backed
            rds:
                storage: 5
        prod:
            description: RDS backed
            rds:
                storage: 5
    vagrant:
        ports:
            1239: 80

api-gateway:
    subdomain: gateway # ll: gateway.elifesciences.org
    formula-repo: https://github.com/elifesciences/api-gateway-formula
    aws:
        ports:
            - 22
            - 80 # TODO: remove in favor of only 443? will require certificates for all environments
            - 443
            # - 8000: # possibly expose this to public. Kong uses this to *proxy* requests
            # - 8001: # don't ever expose to public. Kong uses this for API management
    vagrant:
        ports:
            1323: 80


journal:
    subdomain: journal # journal.elifesciences.org
    repo: https://github.com/elifesciences/journal
    formula-repo: https://github.com/elifesciences/journal-formula
    aws:
        ports:
            - 22
            - 443
            - 80
    vagrant:
        ports:
            1240: 80


elife-metrics:
    subdomain: metrics # metrics.elifesciences.org
    repo: https://github.com/elifesciences/elife-metrics
    formula-repo: https://github.com/elifesciences/elife-metrics-formula
    aws:
        ports:
            - 22
            - 443
            - 80
            - 5432
    aws-alt:
        master:
            description: production environment for metrics. RDS backed
            rds:
                storage: 5
    vagrant:
        ports:
            1240: 80


elife-bot:
    repo: https://github.com/elifesciences/elife-bot
    formula-repo: https://github.com/elifesciences/elife-bot-formula
    aws:
        type: t2.medium
        ports:
            - 22
            - 80
        ext:
            size: 30 # GB
    aws-alt:
        large:
            description: intended to run temporarily
            type: c4.4xlarge
            ext:
                size: 160 # GB
                type: ssd
                device: /dev/xvdh
    vagrant:
        ports:
            1231: 80


journal-cms:
    subdomain: journal-cms # journal-cms.elifesciences.org
    repo: https://github.com/elifesciences/elife-2.0-website
    formula-repo: https://github.com/elifesciences/journal-cms-formula
    aws:
        ports:
            - 22
            - 443
            - 80
    vagrant:
        ports:
            1241: 80


elife-dashboard:
    subdomain: ppp-dash # ppp-dash.elifesciences.org
    repo: ssh://git@github.com/elifesciences/elife-dashboard
    formula-repo: https://github.com/elifesciences/elife-dashboard-formula
    default-branch: develop
    aws:
        ports:
            - 22
            - 80
            - 443
    aws-alt:
        end2end:
            description: production-like environment. backed by RDS
            rds:
                storage: 5
        prod:
            description: production environment. backed by RDS
            rds:
                storage: 5
    vagrant:
        ports:
            1324: 80
            8080: 8080 # scheduler (blocked on AWS)


elife-api:
    subdomain: api # api.elifesciences.org
    repo: https://github.com/elifesciences/elife-api
    formula-repo: https://github.com/elifesciences/elife-api-formula
    aws:
        ports:
            - 22
            - 80
            - 443
    vagrant:
        ports:
            1233: 80


elife-reporting:
    formula-repo: https://github.com/elifesciences/elife-reporting-formula
    vagrant:
        ram: 1024
        ports:
            1333: 80

elife-libraries:
    formula-repo: https://github.com/elifesciences/elife-libraries-formula
    aws:
        type: t2.small # 2GB of RAM
        ports:
            - 22
    vagrant:
        ram: 2048

elife-alfred:
    subdomain: alfred
    formula-repo: https://github.com/elifesciences/elife-alfred-formula
    aws:
        type: t2.medium
        ports:
            - 22
            - 80
            - 16022 # Jenkins SSH port
    vagrant:
        ram: 4096
        ports:
            1433: 80

elife-jira:
    subdomain: jira # jira.elifesciences.org
    formula-repo: https://github.com/elifesciences/elife-jira-formula
    aws:
        ports:
            - 22
            - 8080
    vagrant:
        ram: 3096
        ports:
            1325: 8080

api-dummy:
    subdomain: api-dummy
    repo: https://github.com/elifesciences/api-dummy
    formula-repo: https://github.com/elifesciences/api-dummy-formula
    aws:
        type: t2.micro
        ports:
            - 22
            - 443
            - 80
    vagrant:
        ports:
            1242: 80

elife-website:
    subdomain: v2
    repo: https://github.com/elifesciences/elife-website
    formula-repo: https://github.com/elifesciences/elife-website-formula
    aws:
        ports:
            - 22
            - 80
            - 443
    aws-alt:
        large:
            description: intended to run temporarily
            type: m4.2xlarge
    vagrant:
        ram: 3072
        ports:
            1238: 80
            1326: 8983 # Solr web gui
            3307: 3306 # mysql
            6379: 6379 # redis

anonymous:
    formula-repo: https://github.com/elifesciences/anonymous-formula
    aws:
        type: t2.micro
        ports:
            - 22
    vagrant:
        ram: 1024
<commit_msg>project file, captured the prod elife-bot elastic ip. this will need to be handled properly at some point<commit_after>defaults:
    description: defaults for all projects in this file
    salt: '2016.3' # the version of salt these project use
    domain: elifesciences.org
    # addressing within VPC
    intdomain: elife.internal
    # 'lax', 'metrics', 'gateway', etc
    subdomain: null
    # projects with an explicit `repo` attribute support branch deployments with
    # ./bldr deploy
    repo: null
    # repository containing build instructions for this project
    formula-repo: null
    # repo containing project pillar data (credentials typically)
    # only the master-server will have a copy of this and only the master-server
    # will need permissions to clone it
    private-repo: ssh://git@github.com/elifesciences/builder-private
    # default branch to use when creating new instances
    default-branch: master
    # 
    formula-dependencies:
        - https://github.com/elifesciences/builder-base-formula
    aws:
        # find more here: http://cloud-images.ubuntu.com/releases/
        ami: ami-aa15f6c7   # elife 'basebox.2016-05-06'
        region: us-east-1
        vpc-id: vpc-78a2071d  # vpc-id + subnet-id are peculiar to AWS account + region
        subnet-id: subnet-1d4eb46a # elife-public-subnet
        subnet-cidr: '10.0.2.0/24'
        type: t2.small  # ~ $20/mo
        rds:
            # rds defaults only used if an `rds` section present in project
            # explicit database name overrides the one generated at template creation
            multi-az: False
            engine: postgres
            # ensure this matches the version of Postgres you install on server!
            version: '9.4'
            type: db.t2.small
            storage: 5 # GB
            backup-retention: 28 # days
            # two subnets are required in two different availability zones
            # http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html
            subnets:
                # two are required
                # NOTE! the 'dbsubnet-' prefix is important to *builder*
                # it tells us which subnets we can provision RDS within
                - subnet-8eea67d7 # elife-dbsubnet-1
                - subnet-dbc471f0 # elife-dbsubnet-2

        ext:
            # external hdd
            size: 10 # GB
            device: /dev/sdh
    aws-alt:
        fresh:
            description: uses a plain Ubuntu basebox instead of an ami
            ami: ami-9eaa1cf6 # Ubuntu 14.04
    vagrant:
        box: ubuntu/trusty64 # Ubuntu 14.04
        # box-url not needed for boxes hosted on Atlas 
        box-url: null 
        ip: 192.168.33.44
        ram: 1024
        cpus: 2
        cpucap: 100 # percent (vagrant default)
 
basebox:
    aws:
        ami: ami-9eaa1cf6 # Ubuntu 14.04 (correct, but older)
        ports:
            - 22    
    vagrant: {}

master-server:
    # formula-repo for the 'master-server' project should contain the 
    # confidential pillar data, master config and state top file.
    # see: https://github.com/elifesciences/builder-private-example
    formula-repo: ssh://git@github.com/elifesciences/master-server-formula
    aws:
        ports:
            - 22
            - 4506: # salt publish port
                # CIDR of subnet this master will server
                cidr-ip: 10.0.2.0/24 # access via VPC ip range only
            - 4505: # salt return port
                cidr-ip: 10.0.2.0/24
    vagrant: {}

lax:
    subdomain: lax # lax.elifesciences.org
    repo: https://github.com/elifesciences/lax.git
    formula-repo: https://github.com/elifesciences/lax-formula
    aws:
        ports:
            - 22
            - 443
            - 80
    aws-alt:
        end2end:
            description: RDS backed
            rds:
                storage: 5
        prod:
            description: RDS backed
            rds:
                storage: 5
    vagrant:
        ports:
            1239: 80

api-gateway:
    subdomain: gateway # ll: gateway.elifesciences.org
    formula-repo: https://github.com/elifesciences/api-gateway-formula
    aws:
        ports:
            - 22
            - 80 # TODO: remove in favor of only 443? will require certificates for all environments
            - 443
            # - 8000: # possibly expose this to public. Kong uses this to *proxy* requests
            # - 8001: # don't ever expose to public. Kong uses this for API management
    vagrant:
        ports:
            1323: 80


journal:
    subdomain: journal # journal.elifesciences.org
    repo: https://github.com/elifesciences/journal
    formula-repo: https://github.com/elifesciences/journal-formula
    aws:
        ports:
            - 22
            - 443
            - 80
    vagrant:
        ports:
            1240: 80


elife-metrics:
    subdomain: metrics # metrics.elifesciences.org
    repo: https://github.com/elifesciences/elife-metrics
    formula-repo: https://github.com/elifesciences/elife-metrics-formula
    aws:
        ports:
            - 22
            - 443
            - 80
            - 5432
    aws-alt:
        master:
            description: production environment for metrics. RDS backed
            rds:
                storage: 5
    vagrant:
        ports:
            1240: 80


elife-bot:
    repo: https://github.com/elifesciences/elife-bot
    formula-repo: https://github.com/elifesciences/elife-bot-formula
    aws:
        type: t2.medium
        ports:
            - 22
            - 80
        ext:
            size: 30 # GB
    aws-alt:
        #prod:
        #    eip: 172.16.58.3
        large:
            description: intended to run temporarily
            type: c4.4xlarge
            ext:
                size: 160 # GB
                type: ssd
                device: /dev/xvdh
    vagrant:
        ports:
            1231: 80


journal-cms:
    subdomain: journal-cms # journal-cms.elifesciences.org
    repo: https://github.com/elifesciences/elife-2.0-website
    formula-repo: https://github.com/elifesciences/journal-cms-formula
    aws:
        ports:
            - 22
            - 443
            - 80
    vagrant:
        ports:
            1241: 80


elife-dashboard:
    subdomain: ppp-dash # ppp-dash.elifesciences.org
    repo: ssh://git@github.com/elifesciences/elife-dashboard
    formula-repo: https://github.com/elifesciences/elife-dashboard-formula
    default-branch: develop
    aws:
        ports:
            - 22
            - 80
            - 443
    aws-alt:
        end2end:
            description: production-like environment. backed by RDS
            rds:
                storage: 5
        prod:
            description: production environment. backed by RDS
            rds:
                storage: 5
    vagrant:
        ports:
            1324: 80
            8080: 8080 # scheduler (blocked on AWS)


elife-api:
    subdomain: api # api.elifesciences.org
    repo: https://github.com/elifesciences/elife-api
    formula-repo: https://github.com/elifesciences/elife-api-formula
    aws:
        ports:
            - 22
            - 80
            - 443
    vagrant:
        ports:
            1233: 80


elife-reporting:
    formula-repo: https://github.com/elifesciences/elife-reporting-formula
    vagrant:
        ram: 1024
        ports:
            1333: 80

elife-libraries:
    formula-repo: https://github.com/elifesciences/elife-libraries-formula
    aws:
        type: t2.small # 2GB of RAM
        ports:
            - 22
    vagrant:
        ram: 2048

elife-alfred:
    subdomain: alfred
    formula-repo: https://github.com/elifesciences/elife-alfred-formula
    aws:
        type: t2.medium
        ports:
            - 22
            - 80
            - 16022 # Jenkins SSH port
    vagrant:
        ram: 4096
        ports:
            1433: 80

elife-jira:
    subdomain: jira # jira.elifesciences.org
    formula-repo: https://github.com/elifesciences/elife-jira-formula
    aws:
        ports:
            - 22
            - 8080
    vagrant:
        ram: 3096
        ports:
            1325: 8080

api-dummy:
    subdomain: api-dummy
    repo: https://github.com/elifesciences/api-dummy
    formula-repo: https://github.com/elifesciences/api-dummy-formula
    aws:
        type: t2.micro
        ports:
            - 22
            - 443
            - 80
    vagrant:
        ports:
            1242: 80

elife-website:
    subdomain: v2
    repo: https://github.com/elifesciences/elife-website
    formula-repo: https://github.com/elifesciences/elife-website-formula
    aws:
        ports:
            - 22
            - 80
            - 443
    aws-alt:
        large:
            description: intended to run temporarily
            type: m4.2xlarge
    vagrant:
        ram: 3072
        ports:
            1238: 80
            1326: 8983 # Solr web gui
            3307: 3306 # mysql
            6379: 6379 # redis

anonymous:
    formula-repo: https://github.com/elifesciences/anonymous-formula
    aws:
        type: t2.micro
        ports:
            - 22
    vagrant:
        ram: 1024

{'fraction_non_alphanumeric': 0.08585108139342909, 'fraction_numerical': 0.042485278740850806, 'mean_word_length': 1.5422495803021825, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 50, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 15, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '615226', 'n_tokens_mistral': 6110, 'n_tokens_neox': 5347, 'n_words': 1408}