Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 40 additions & 43 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,15 @@
version: 2
defaults: &defaults
docker:
- image: cimg/python:3.11.0-browsers
docker:
- image: cimg/python:3.12.1-browsers
install_dependency: &install_dependency
name: Installation of build and deployment dependencies.
command: |
sudo apt update
sudo apt install jq
sudo apt install python3-pip
sudo pip3 install awscli --upgrade
sudo pip3 install docker-compose
pip3 install awscli --upgrade
install_deploysuite: &install_deploysuite
name: Installation of install_deploysuite.
command: |
git clone --branch v1.4.15 https://github.com/topcoder-platform/tc-deploy-scripts ../buildscript
git clone --branch v1.4.17 https://github.com/topcoder-platform/tc-deploy-scripts ../buildscript
cp ./../buildscript/master_deploy.sh .
cp ./../buildscript/buildenv.sh .
cp ./../buildscript/awsconfiguration.sh .
Expand All @@ -23,60 +19,61 @@ restore_cache_settings_for_build: &restore_cache_settings_for_build
save_cache_settings: &save_cache_settings
key: docker-node-modules-{{ checksum "yarn.lock" }}
paths:
- node_modules
- node_modules

builddeploy_steps: &builddeploy_steps
- checkout
- setup_remote_docker
- run: *install_dependency
- run: *install_deploysuite
- restore_cache: *restore_cache_settings_for_build
- run: ./build.sh ${APPNAME}
- save_cache: *save_cache_settings
- deploy:
name: Running MasterScript.
command: |
./awsconfiguration.sh $DEPLOY_ENV
source awsenvconf
./buildenv.sh -e $DEPLOY_ENV -b ${LOGICAL_ENV}-${APPNAME}-deployvar
source buildenvvar
./master_deploy.sh -d ECS -e $DEPLOY_ENV -t latest -s ${LOGICAL_ENV}-global-appvar,${LOGICAL_ENV}-${APPNAME}-appvar -i ${APPNAME}
- checkout
- setup_remote_docker
- run: *install_dependency
- run: *install_deploysuite
- restore_cache: *restore_cache_settings_for_build
- run: ./build.sh ${APPNAME}
- save_cache: *save_cache_settings
- deploy:
name: Running MasterScript.
command: |
./awsconfiguration.sh $DEPLOY_ENV
source awsenvconf
./buildenv.sh -e $DEPLOY_ENV -b ${LOGICAL_ENV}-${APPNAME}-deployvar
source buildenvvar
./master_deploy.sh -d ECS -e $DEPLOY_ENV -t latest -s ${LOGICAL_ENV}-global-appvar,${LOGICAL_ENV}-${APPNAME}-appvar -i ${APPNAME}


jobs:
# Build & Deploy against development backend
"build-dev":
<<: *defaults
!!merge <<: *defaults
environment:
DEPLOY_ENV: "DEV"
LOGICAL_ENV: "dev"
APPNAME: "challenge-processor-es"
APPNAME: "challenge-processor-es"
steps: *builddeploy_steps

"build-prod":
<<: *defaults
!!merge <<: *defaults
environment:
DEPLOY_ENV: "PROD"
LOGICAL_ENV: "prod"
APPNAME: "challenge-processor-es"
LOGICAL_ENV: "prod"
APPNAME: "challenge-processor-es"
steps: *builddeploy_steps

workflows:
version: 2
build:
jobs:
# Development builds are executed on "develop" branch only.
- "build-dev":
context : org-global
filters:
branches:
only:
- develop
# Development builds are executed on "develop" branch only.
- "build-dev":
context: org-global
filters:
branches:
only:
- develop
- TI-94

# Production builds are exectuted only on tagged commits to the
# master branch.
- "build-prod":
context : org-global
filters:
branches:
only: master
# Production builds are exectuted only on tagged commits to the
# master branch.
- "build-prod":
context: org-global
filters:
branches:
only: master
1 change: 1 addition & 0 deletions config/default.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ module.exports = {
RESOURCES_API_URL: process.env.RESOURCES_API_URL || 'http://localhost:4000/v5/resources',
CHALLENGE_API_URL: process.env.CHALLENGE_API_URL || 'http://localhost:4000/v5/challenges',
CONTEST_SUBMISSION_TYPE: process.env.CONTEST_SUBMISSION_TYPE || 'Contest Submission',
CHALLENGE_SUBMISSION_TYPE: process.env.CHALLENGE_SUBMISSION_TYPE || 'challengesubmission',
CHECKPOINT_SUBMISSION_TYPE: process.env.CHECKPOINT_SUBMISSION_TYPE || 'Checkpoint Submission',

// superagent request timeout in milliseconds
Expand Down
13 changes: 9 additions & 4 deletions src/services/ProcessorService.js
Original file line number Diff line number Diff line change
Expand Up @@ -247,16 +247,21 @@ removeResource.schema = createResource.schema
* @param {String} challengeId the challenge id
*/
async function updateSubmissionsData (challengeId, type) {
logger.debug(`Update Submissions Data Challenge ID ${challengeId} and Submission Type ${type}`);
await new Promise(resolve => setTimeout(resolve, 2000))

const v5challengeId = await helper.getV5ChallengeId(challengeId)
logger.debug(`Update Submissions Data Challenge UUID ${v5challengeId}`)
const submissionCount = await helper.getData(`${config.SUBMISSIONS_API_URL}/${v5challengeId}/count`)
logger.debug(`Update Submissions Data Submission Count ${JSON.stringify(submissionCount)}`)

let numOfSubmissions = _.get(submissionCount, config.CONTEST_SUBMISSION_TYPE, 0)

let numOfSubmissions = submissionCount[type] || 0
let numOfCheckpointSubmissions = _.get(submissionCount, config.CHECKPOINT_SUBMISSION_TYPE, 0)

if (type && _.get(submissionCount, type, 0) === 0) {
if (type === config.CONTEST_SUBMISSION_TYPE) {
logger.debug(`Update Submissions Data Submission Count ${numOfSubmissions} and Checkpoint Submission Count ${numOfCheckpointSubmissions}`)

if (type && numOfSubmissions === 0 && numOfCheckpointSubmissions === 0) {
if (type === config.CONTEST_SUBMISSION_TYPE || type === config.CHALLENGE_SUBMISSION_TYPE) {
numOfSubmissions = 1
} else if (type === config.CHECKPOINT_SUBMISSION_TYPE) {
numOfCheckpointSubmissions = 1
Expand Down