|
1 | 1 | require('dotenv').config()
|
2 | 2 | module.exports = {
|
| 3 | + // the log level, default is 'debug' |
3 | 4 | LOG_LEVEL: process.env.LOG_LEVEL || 'debug',
|
| 5 | + // the server port, default is 3000 |
4 | 6 | PORT: process.env.PORT || 3000,
|
| 7 | + // the server api base path |
5 | 8 | BASE_PATH: process.env.BASE_PATH || '/api/v5',
|
6 | 9 |
|
| 10 | + // The authorization secret used during token verification. |
7 | 11 | AUTH_SECRET: process.env.AUTH_SECRET || 'mysecret',
|
| 12 | + // The valid issuer of tokens, a json array contains valid issuer. |
8 | 13 | VALID_ISSUERS: process.env.VALID_ISSUERS || '["https://api.topcoder-dev.com", "https://api.topcoder.com", "https://topcoder-dev.auth0.com/", "https://auth.topcoder-dev.com/"]',
|
| 14 | + // Auth0 URL, used to get TC M2M token |
9 | 15 | AUTH0_URL: process.env.AUTH0_URL,
|
| 16 | + // Auth0 audience, used to get TC M2M token |
10 | 17 | AUTH0_AUDIENCE: process.env.AUTH0_AUDIENCE,
|
| 18 | + // Auth0 audience for U-Bahn |
11 | 19 | AUTH0_AUDIENCE_UBAHN: process.env.AUTH0_AUDIENCE_UBAHN,
|
| 20 | + // Auth0 token cache time, used to get TC M2M token |
12 | 21 | TOKEN_CACHE_TIME: process.env.TOKEN_CACHE_TIME,
|
| 22 | + // Auth0 client id, used to get TC M2M token |
13 | 23 | AUTH0_CLIENT_ID: process.env.AUTH0_CLIENT_ID,
|
| 24 | + // Auth0 client secret, used to get TC M2M token |
14 | 25 | AUTH0_CLIENT_SECRET: process.env.AUTH0_CLIENT_SECRET,
|
| 26 | + // Proxy Auth0 URL, used to get TC M2M token |
15 | 27 | AUTH0_PROXY_SERVER_URL: process.env.AUTH0_PROXY_SERVER_URL,
|
16 | 28 |
|
17 | 29 | m2m: {
|
18 | 30 | M2M_AUDIT_USER_ID: process.env.M2M_AUDIT_USER_ID || '00000000-0000-0000-0000-000000000000',
|
19 | 31 | M2M_AUDIT_HANDLE: process.env.M2M_AUDIT_HANDLE || 'TopcoderService'
|
20 | 32 | },
|
21 | 33 |
|
| 34 | + // the Topcoder v5 url |
22 | 35 | TC_API: process.env.TC_API || 'https://api.topcoder-dev.com/v5',
|
| 36 | + // the organization id |
23 | 37 | ORG_ID: process.env.ORG_ID || '36ed815b-3da1-49f1-a043-aaed0a4e81ad',
|
| 38 | + // the referenced skill provider id |
24 | 39 | TOPCODER_SKILL_PROVIDER_ID: process.env.TOPCODER_SKILL_PROVIDER_ID || '9cc0795a-6e12-4c84-9744-15858dba1861',
|
25 | 40 |
|
26 | 41 | TOPCODER_USERS_API: process.env.TOPCODER_USERS_API || 'https://api.topcoder-dev.com/v3/users',
|
| 42 | + // the api to find topcoder members |
| 43 | + TOPCODER_MEMBERS_API: process.env.TOPCODER_MEMBERS_API || 'https://api.topcoder-dev.com/v3/members', |
| 44 | + // rate limit of requests to user api |
| 45 | + MAX_PARALLEL_REQUEST_TOPCODER_USERS_API: process.env.MAX_PARALLEL_REQUEST_TOPCODER_USERS_API || 100, |
27 | 46 |
|
| 47 | + // PostgreSQL database url. |
28 | 48 | DATABASE_URL: process.env.DATABASE_URL || 'postgres://postgres:postgres@localhost:5432/postgres',
|
| 49 | + // string - PostgreSQL database target schema |
29 | 50 | DB_SCHEMA_NAME: process.env.DB_SCHEMA_NAME || 'bookings',
|
| 51 | + // the project service url |
30 | 52 | PROJECT_API_URL: process.env.PROJECT_API_URL || 'https://api.topcoder-dev.com',
|
31 | 53 |
|
| 54 | + // the default path for importing and exporting data |
| 55 | + DEFAULT_DATA_FILE_PATH: './data/demo-data.json', |
| 56 | + |
32 | 57 | esConfig: {
|
| 58 | + // the elasticsearch host |
33 | 59 | HOST: process.env.ES_HOST || 'http://localhost:9200',
|
34 | 60 |
|
35 | 61 | ELASTICCLOUD: {
|
| 62 | + // The elastic cloud id, if your elasticsearch instance is hosted on elastic cloud. DO NOT provide a value for ES_HOST if you are using this |
36 | 63 | id: process.env.ELASTICCLOUD_ID,
|
| 64 | + // The elastic cloud username for basic authentication. Provide this only if your elasticsearch instance is hosted on elastic cloud |
37 | 65 | username: process.env.ELASTICCLOUD_USERNAME,
|
| 66 | + // The elastic cloud password for basic authentication. Provide this only if your elasticsearch instance is hosted on elastic cloud |
38 | 67 | password: process.env.ELASTICCLOUD_PASSWORD
|
39 | 68 | },
|
40 | 69 |
|
| 70 | + // The Amazon region to use when using AWS Elasticsearch service |
41 | 71 | AWS_REGION: process.env.AWS_REGION || 'us-east-1', // AWS Region to be used if we use AWS ES
|
42 | 72 |
|
| 73 | + // the job index |
43 | 74 | ES_INDEX_JOB: process.env.ES_INDEX_JOB || 'job',
|
| 75 | + // the job candidate index |
44 | 76 | ES_INDEX_JOB_CANDIDATE: process.env.ES_INDEX_JOB_CANDIDATE || 'job_candidate',
|
45 |
| - ES_INDEX_RESOURCE_BOOKING: process.env.ES_INDEX_RESOURCE_BOOKING || 'resource_booking' |
| 77 | + // the resource booking index |
| 78 | + ES_INDEX_RESOURCE_BOOKING: process.env.ES_INDEX_RESOURCE_BOOKING || 'resource_booking', |
| 79 | + |
| 80 | + // the max bulk size in MB for ES indexing |
| 81 | + MAX_BULK_REQUEST_SIZE_MB: process.env.MAX_BULK_REQUEST_SIZE_MB || 20, |
| 82 | + // the max number of documents per bulk for ES indexing |
| 83 | + MAX_BULK_NUM_DOCUMENTS: process.env.MAX_BULK_NUM_DOCUMENTS || 100 |
46 | 84 | },
|
47 | 85 |
|
| 86 | + // Topcoder Bus API URL |
48 | 87 | BUSAPI_URL: process.env.BUSAPI_URL || 'https://api.topcoder-dev.com/v5',
|
| 88 | + // The error topic at which bus api will publish any errors |
49 | 89 | KAFKA_ERROR_TOPIC: process.env.KAFKA_ERROR_TOPIC || 'common.error.reporting',
|
| 90 | + // The originator value for the kafka messages |
50 | 91 | KAFKA_MESSAGE_ORIGINATOR: process.env.KAFKA_MESSAGE_ORIGINATOR || 'taas-api',
|
51 | 92 | // topics for job service
|
| 93 | + // the create job entity Kafka message topic |
52 | 94 | TAAS_JOB_CREATE_TOPIC: process.env.TAAS_JOB_CREATE_TOPIC || 'taas.job.create',
|
| 95 | + // the update job entity Kafka message topic |
53 | 96 | TAAS_JOB_UPDATE_TOPIC: process.env.TAAS_JOB_UPDATE_TOPIC || 'taas.job.update',
|
| 97 | + // the delete job entity Kafka message topic |
54 | 98 | TAAS_JOB_DELETE_TOPIC: process.env.TAAS_JOB_DELETE_TOPIC || 'taas.job.delete',
|
55 | 99 | // topics for jobcandidate service
|
| 100 | + // the create job candidate entity Kafka message topic |
56 | 101 | TAAS_JOB_CANDIDATE_CREATE_TOPIC: process.env.TAAS_JOB_CANDIDATE_CREATE_TOPIC || 'taas.jobcandidate.create',
|
| 102 | + // the update job candidate entity Kafka message topic |
57 | 103 | TAAS_JOB_CANDIDATE_UPDATE_TOPIC: process.env.TAAS_JOB_CANDIDATE_UPDATE_TOPIC || 'taas.jobcandidate.update',
|
| 104 | + // the delete job candidate entity Kafka message topic |
58 | 105 | TAAS_JOB_CANDIDATE_DELETE_TOPIC: process.env.TAAS_JOB_CANDIDATE_DELETE_TOPIC || 'taas.jobcandidate.delete',
|
59 | 106 | // topics for job service
|
| 107 | + // the create resource booking entity Kafka message topic |
60 | 108 | TAAS_RESOURCE_BOOKING_CREATE_TOPIC: process.env.TAAS_RESOURCE_BOOKING_CREATE_TOPIC || 'taas.resourcebooking.create',
|
| 109 | + // the update resource booking entity Kafka message topic |
61 | 110 | TAAS_RESOURCE_BOOKING_UPDATE_TOPIC: process.env.TAAS_RESOURCE_BOOKING_UPDATE_TOPIC || 'taas.resourcebooking.update',
|
62 |
| - TAAS_RESOURCE_BOOKING_DELETE_TOPIC: process.env.TAAS_RESOURCE_BOOKING_DELETE_TOPIC || 'taas.resourcebooking.delete' |
| 111 | + // the delete resource booking entity Kafka message topic |
| 112 | + TAAS_RESOURCE_BOOKING_DELETE_TOPIC: process.env.TAAS_RESOURCE_BOOKING_DELETE_TOPIC || 'taas.resourcebooking.delete', |
| 113 | + |
| 114 | + // the Kafka message topic for sending email |
| 115 | + EMAIL_TOPIC: process.env.EMAIL_TOPIC || 'external.action.email', |
| 116 | + // the emails address for receiving the issue report |
| 117 | + // REPORT_ISSUE_EMAILS may contain comma-separated list of email which is converted to array |
| 118 | + REPORT_ISSUE_EMAILS: (process.env.REPORT_ISSUE_EMAILS || '').split(','), |
| 119 | + // SendGrid email template ID for reporting issue |
| 120 | + REPORT_ISSUE_SENDGRID_TEMPLATE_ID: process.env.REPORT_ISSUE_SENDGRID_TEMPLATE_ID, |
| 121 | + // the URL where TaaS App is hosted |
| 122 | + TAAS_APP_URL: process.env.TAAS_APP_URL || 'https://platform.topcoder-dev.com/taas/myteams' |
63 | 123 | }
|
0 commit comments