Skip to content
This repository was archived by the owner on Mar 12, 2025. It is now read-only.

Commit e22f3fe

Browse files
committed
reading skills list out of a file. added in env vars
1 parent 84d370f commit e22f3fe

File tree

5 files changed

+68
-328
lines changed

5 files changed

+68
-328
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"DOMAIN": "DOMAIN",
3+
"FILE_SKILLS": "FILE_SKILLS",
4+
"SKILLPROVIDERID": ""
5+
}

config/default.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"DOMAIN": "api.topcoder-dev.com",
3+
"FILE_SKILLS": "skills-list.txt",
4+
"SKILLPROVIDERID": ""
5+
}

create-skills.js

Lines changed: 34 additions & 327 deletions
Original file line numberDiff line numberDiff line change
@@ -1,336 +1,43 @@
1+
2+
const fs = require('fs').promises
3+
const config = require('config')
14
const axios = require('axios')
2-
const skills = [
3-
'.Net Architecture',
4-
'C# - CSharp-Programming',
5-
'.NET',
6-
'ASP.NET',
7-
'WinForms',
8-
'VB.NET',
9-
'WPF - Windows Presentation Foundation',
10-
'WF - Windows Workflow Foundation',
11-
'.NET Design Patterns',
12-
'ADO.NET',
13-
'.NET Enterprise Library',
14-
'WCF - Windows Communication Foundation',
15-
'ASP.NET MVC 2',
16-
'ADO.NET Entity Framework',
17-
'ASP.NET MVC 3',
18-
'ASP.NET MVC 4',
19-
'LINQ - Language Integrated Query',
20-
'NHibernate',
21-
'.NET Upgrade',
22-
'.NET Coded UI Test Builder',
23-
'BizTalk',
24-
'Biztalk - Architecting',
25-
'AppFabric',
26-
'BizTalk 2013',
27-
'BizTalk Monitoring Tools',
28-
'BizTalk ESB Toolkit',
29-
'Cloud-Microsoft Azure',
30-
'Cloud-SQL Azure',
31-
'MS Azure App Cloud computing Consulting',
32-
'Azure API Management',
33-
'Azure Web Apps',
34-
'Azure Mobile Apps',
35-
'Azure Logic Apps',
36-
'Azure API Apps',
37-
'Azure Cloud Services',
38-
'Azure Active Directory',
39-
'Azure Service Bus',
40-
'Azure IOT',
41-
'Azure Monitoring Tools',
42-
'Azure Microservices',
43-
'Azure Kubernetes Services',
44-
'FullStack Microsoft-Cloud Azure',
45-
'Azure SDK for Java',
46-
'Azure Cosmos DB',
47-
'Azure DevOps Server',
48-
'Application Lifecycle Management - ALM',
49-
'DevOps - Continuous Delivery',
50-
'Continuous Integration - Bamboo',
51-
'Docker Platform',
52-
'Cloud-Microsoft Azure DevOps',
53-
'Puppet for DevOps Apps',
54-
'Chef for DevOps Apps',
55-
'JS JavaScript Libraries for .Net',
56-
'Json.NET-JavaScript Object Notation for .Net',
57-
'CSS3',
58-
'TypeScript',
59-
'ASP.NET MVC 5',
60-
'Knockout JS',
61-
'Express JS',
62-
'UWP - Universal Windows Platform',
63-
'Microsoft Cortana SDK',
64-
'Microsoft Modern Apps Architecting',
65-
'ASP.NET Web API',
66-
'Angular 4.0',
67-
'ASP.NET Core',
68-
'AngularJS for .NET',
69-
'Bootstrap for .NET',
70-
'NodeJS for .NET',
71-
'Angular 5 MS',
72-
'FullStack Microsoft .NET Smart Web App',
73-
'Conversational AI',
74-
'LUIS - Microsoft Cognitive Service',
75-
'.NET Microservices',
76-
'ML.NET',
77-
'Xamarin Platform',
78-
'Sitecore',
79-
'Umbraco CMS - Content Management System',
80-
'SDL Tridion',
81-
'Sitefinity - Web Content Management',
82-
'Episerver CMS - Content Management System',
83-
'DNN CMS - Content Management System',
84-
'Aprimo ADAM - Digital Asset Management',
85-
'Kentico - Content Management System',
86-
'MSCRM Functional',
87-
'Microsoft Dynamics CRM 2011',
88-
'MS CRM Surround',
89-
'MSCRM Tech Advanced',
90-
'Microsoft Dynamics AX',
91-
'Microsoft Dynamics NAV',
92-
'Microsoft Dynamics CRM 2013',
93-
'Microsoft Dynamics CRM 2016 - Customization and Configuratio',
94-
'Microsoft Dynamics CRM 2016 - Sales',
95-
'Microsoft Dynamics 365 Customization and Configuration',
96-
'Microsoft Dynamics 365 for Sales',
97-
'MICROSOFT DYNAMICS CRM 2015',
98-
'Microsoft Dynamics 365 for Customer Service',
99-
'Microsoft Dynamics 365 for Project Service Automation',
100-
'Microsoft Social Engagement for Dynamics CRM',
101-
'Adxstudio Portal',
102-
'Microsoft Dynamics 365 for Operations - Finance',
103-
'MS Dynamics 365 for Operation - Distribution and Trade',
104-
'Microsoft Dynamics 365 for Operation - Retail',
105-
'Microsoft Dynamics AX 2012 - Trade and Logistics',
106-
'Microsoft Dynamics AX 2012 - Finance',
107-
'Microsoft Dynamics AX 2012 - Retail',
108-
'Microsoft Dynamics 365 Portals',
109-
'Microsoft CRM Solution Design',
110-
'Microsoft Dynamics - Project Management',
111-
'Microsoft Dynamics - Consulting',
112-
'FullStack Microsoft-Cloud Customer Experience-Dynamics365',
113-
'Microsoft Power Platform for Dynamics 365',
114-
'DevOps for Dynamics 365',
115-
'Microsoft Dynamics 365 AI for Sales',
116-
'Microsoft Dynamics 365 AI for Service',
117-
'Office 365 PowerShell',
118-
'Office 365 - SharePoint Online',
119-
'ADFS - Active Directory Federation Services',
120-
'Office 365 - Exchange Online',
121-
'Office 365 - Skype for Business',
122-
'Yammer',
123-
'Office 365 - OneDrive for Business',
124-
'Office 365 - Mailbox Migration',
125-
'Office 365 - Admin Center',
126-
'Office 365 - Exchange Online - Consulting',
127-
'FullStack Microsoft-Cloud-Modern Workplace-Office365',
128-
'Sharepoint Admin',
129-
'SharePoint Enterprise Search',
130-
'InfoPath',
131-
'SharePoint Migration',
132-
'MS Project Server',
133-
'SharePoint',
134-
'SharePoint 2010',
135-
'FAST Search',
136-
'SharePoint 2013',
137-
'Nintex Workflow for SharePoint',
138-
'K2.NET',
139-
'SharePoint Designer',
140-
'Excel Services',
141-
'Custom Web Parts',
142-
'Performance Point',
143-
'TeamCity',
144-
'SharePoint 2016',
145-
'Microsoft Project Online',
146-
'Microsoft Flow',
147-
'Microsoft PowerApps',
148-
'Microsoft Office Sway',
149-
'Microsoft Teams',
150-
'Office 365 - Planner',
151-
'Microsoft Office Delve',
152-
'Office 365 - Video',
153-
'Microsoft Stream',
154-
'Microsoft EPM - Enterprise Project Management',
155-
'ASP - Active Server Page',
156-
'Visual Basic-VB',
157-
'SQL Server',
158-
'HTML5',
159-
'Entity Framework',
160-
'.NET Framework',
161-
'jQuery',
162-
'AJAX',
163-
'Apache Maven',
164-
'C',
165-
'C++',
166-
'PHP',
167-
'PIVOTAL CLOUD FOUNDRY',
168-
'Microsoft PowerBI',
169-
'PYTHON',
170-
'React JS',
171-
'UNIX',
172-
'Performance Testing',
173-
'OSS Application Testing',
174-
'BAQA Digital Assurance',
175-
'Mainframe Testing',
176-
'Parasoft SOAtest',
177-
'Mobile Native Application Testing',
178-
'Microfocus LoadRunner',
179-
'Microfocus QTP - UFT Automation Testing',
180-
'Microfocus Application Life Cycle Management - HP Quality Center',
181-
'IBM Rational Performance Tester',
182-
'SOA Testing',
183-
'Test Automation',
184-
'Data Centric testing',
185-
'RFT - IBM Rational Functional Tester',
186-
'Application Testing',
187-
'SFDC Testing',
188-
'Usability Testing',
189-
'Test Project Management',
190-
'Project Management-BAS-QET',
191-
'VSTS CodedUI Automation Testing',
192-
'Retail App Testing',
193-
'Selenium',
194-
'Cloud Testing',
195-
'Jmeter',
196-
'dynaTrace',
197-
'IT Environment Management Support',
198-
'Microfocus Performance Center',
199-
'IT Environment Management',
200-
'Test Deployment Management',
201-
'Test Deployment',
202-
'CA Service Virtualization',
203-
'SOAP UI Testing',
204-
'Microfocus Service Virtualization',
205-
'Mobile App Test Automation',
206-
'Mobile App Performance Testing',
207-
'Performance Engineering Essentials',
208-
'Easy Automate Selenium',
209-
'Securities and Capital Markets Testing',
210-
'DB2 Testing',
211-
'Tosca Testsuite - Test Automation',
212-
'CA DevTest',
213-
'Worksoft Certify',
214-
'Accessibility Testing',
215-
'BDD - Behavioral Driven Development Testing',
216-
'Microfocus Service Test',
217-
'QC - ALM Admin',
218-
'Informatica ETL Testing',
219-
'Ab Initio ETL Testing',
220-
'Informatica ILM TDM',
221-
'Banking Testing',
222-
'Teradata Testing',
223-
'Insurance Testing',
224-
'Application Test Consulting',
225-
'Datastage ETL Testing',
226-
'IBM Optim Testing',
227-
'ETL Testing',
228-
'Microstrategy BI Testing',
229-
'Big Data Testing',
230-
'PEGA Testing',
231-
'Tosca OSV-Orchestrated Service Virtualization',
232-
'SDET',
233-
'Protractor',
234-
'Informatica master data management Testing',
235-
'IBM master data management Testing',
236-
'QuerySurge',
237-
'Informatica - Data validation option',
238-
'New Relic',
239-
'AppDynamics',
240-
'CA Application Performance Management',
241-
'Datadog',
242-
'Sensu',
243-
'Lean Functional Testing',
244-
'Bots Testing',
245-
'Artifical Intelligence Testing',
246-
'Virtual Reality and Augmented Reality Testing',
247-
'CA Test Data Management',
248-
'BI Automated Testing',
249-
'MS D365 Testing',
250-
'ServiceNow Testing',
251-
'Workday Testing',
252-
'Appium',
253-
'Consulting-BAS-QET',
254-
'Parasoft Virtualize',
255-
'FullStack SDET',
256-
'CA Blazemeter',
257-
'Microfocus StormRunner',
258-
'Performance Engineering for Cloud',
259-
'Performance Engineering for Big Data Analytics',
260-
'Performance Engineering for SAP',
261-
'Performance Engineering for Mobile',
262-
'Performance Profiling',
263-
'Integrated Cloud Assurance',
264-
'Applitools Eyes',
265-
'AI/ML App Testing',
266-
'Microservice Assurance',
267-
'ALM Octane',
268-
'Rapid Test Design',
269-
'Smart Data Solution',
270-
'Espresso',
271-
'Headspin',
272-
'XCUITest',
273-
'Qtest',
274-
'SOASTA CLoudTEst',
275-
'Predictive Quality Analytics',
276-
'Modernization Automation Testing',
277-
'Functionize VAE',
278-
'Katalon Studio',
279-
'Cypress',
280-
'Sealights',
281-
'Postman',
282-
'Silk Performer',
283-
'Gatling',
284-
'Chaos Monkey',
285-
'ServiceV Pro',
286-
'WireMock',
287-
'Mockito',
288-
'Pact',
289-
'Java',
290-
'TestNg',
291-
'Maven',
292-
'GitHub',
293-
'Jenkins',
294-
'SonarQube',
295-
'RestAssured',
296-
'Log4J',
297-
'Javadoc',
298-
'Jira',
299-
'SQL Programming language',
300-
'Agile testing',
301-
'Node JS',
302-
'HTML Programming language',
303-
'POS Testing',
304-
'Microsoft TFS',
305-
'SAP BODS'
306-
]
307-
308-
const url = 'https://api.topcoder.com/v5/skills'
309-
5+
6+
const url = `https://${config.DOMAIN}/v5/skills`
7+
const skillProviderId = config.SKILLPROVIDERID
8+
3109
async function sleep(ms) {
31110
return new Promise(resolve => setTimeout(resolve, ms));
31211
}
313-
12+
31413
async function createSkill() {
315-
for (let i = 0; i < skills.length; i++) {
316-
const name = skills[i]
317-
console.log(i)
318-
319-
try {
320-
await axios.post(url, {
321-
skillProviderId: '37f6fb04-b53c-4039-815e-b0ac158324e1',
322-
name
323-
}, {
324-
headers: {
325-
Authorization: 'Bearer '
326-
}
327-
})
328-
} catch (error) {
329-
console.log('Error for ', name)
330-
console.log(error)
14+
try {
15+
const skillsFile = await fs.readFile(config.FILE_SKILLS)
16+
const skills = skillsFile.toString().split('\n')
17+
console.log(`loading ${skills.length} skills to ${skillProviderId}`)
18+
19+
for (let i = 0; i < skills.length; i++) {
20+
const name = skills[i]
21+
console.log(`${i}: ${name}`)
22+
23+
try {
24+
await axios.post(url, {
25+
skillProviderId,
26+
name
27+
}, {
28+
headers: {
29+
Authorization: 'Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ik1rWTNNamsxTWpNeU5Ua3dRalkzTmtKR00wRkZPRVl3TmtJd1FqRXlNVUk0TUVFNE9UQkZOZyJ9.eyJodHRwczovL3RvcGNvZGVyLmNvbS9jbGFpbXMvdXNlcklkIjoiMjMxMjQzMjkiLCJodHRwczovL3RvcGNvZGVyLmNvbS9jbGFpbXMvZW1haWwiOiJjYWxsbWVrYXRvb3RpZUBvdXRsb29rLmNvbSIsImh0dHBzOi8vdG9wY29kZXIuY29tL2NsYWltcy9oYW5kbGUiOiJjYWxsbWVrYXRvb3RpZSIsImh0dHBzOi8vdG9wY29kZXIuY29tL2NsYWltcy9yb2xlcyI6WyJjb3BpbG90IiwiVG9wY29kZXIgVXNlciIsIkNvbm5lY3QgQ29waWxvdCIsInUtYmFobiJdLCJodHRwczovL3RvcGNvZGVyLmNvbS9jbGFpbXMvbmlja25hbWUiOiJjYWxsbWVrYXRvb3RpZSIsImlzcyI6Imh0dHBzOi8vdG9wY29kZXIuYXV0aDAuY29tLyIsInN1YiI6ImF1dGgwfDIzMTI0MzI5IiwiYXVkIjpbImh0dHBzOi8vdS1iYWhuLnRvcGNvZGVyLmNvbSIsImh0dHBzOi8vdG9wY29kZXIuYXV0aDAuY29tL3VzZXJpbmZvIl0sImlhdCI6MTU5ODk2NzU2OCwiZXhwIjoxNTk5MDUzOTY4LCJhenAiOiJOa1NTMU5LYzVoZldpMEU1OFZqUU1GNzAwZ1ZBRmlJQyIsInNjb3BlIjoib3BlbmlkIHByb2ZpbGUgZW1haWwifQ.ioXTj6ictza6iAHlhtYEJGjDlaqttEx65RmM28O5sxoPzAyaHcPxX8rYlBMFhIfBuHFcGi3SI8kQUbnxikGkEeAio9UmejKyNogrwPBWmePTeP9J6NwF-a1f_Pnib-Jr2-Qox9QmGSZL9Ilkxls5Kh5RHtmOmFoKvD6uQOD5ov9IaEJEXvKw4lhy1-FAQKr_-1GT1rhjEEd7LxNsEtSur_wyTWE1tsLMjkBm9R9ZY_yzLN9NZYLP6j6-jOG4OQSoF1dmrCbRQPV9ZOtfEyUDBV3VvXqe-00K1txNOyV9IQgQ1FMIDf9g1bd2s9oC6lBKghScobml7RpSDPESOddZqg'
30+
}
31+
})
32+
} catch (error) {
33+
console.log('Error for ', name)
34+
console.log(error)
35+
}
36+
await sleep(3000)
33137
}
332-
await sleep(3000)
38+
} catch (e) {
39+
console.log(e)
33340
}
33441
}
335-
42+
33643
createSkill()

0 commit comments

Comments
 (0)