screwdriver-data-schema 21.19.0 → 21.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,8 +43,17 @@ const SCHEMA_PROVIDER = Joi.object().keys({
43
43
  region: Joi.string()
44
44
  .regex(Regex.REGION)
45
45
  .max(64)
46
- .description('Region')
46
+ .description('Region where service and build will run, build region can be overridden')
47
+ .default('us-west-2')
47
48
  .example('us-west-2'),
49
+ buildRegion: Joi.string()
50
+ .regex(Regex.REGION)
51
+ .max(64)
52
+ .description('Region where builds will run if different from service region')
53
+ .default('')
54
+ .example('us-east-2')
55
+ .allow('')
56
+ .optional(),
48
57
  accountId: Joi.alternatives()
49
58
  .try(
50
59
  Joi.string()
@@ -0,0 +1,22 @@
1
+ /* eslint-disable new-cap */
2
+
3
+ 'use strict';
4
+
5
+ const prefix = process.env.DATASTORE_SEQUELIZE_PREFIX || '';
6
+ const table = `${prefix}events`;
7
+
8
+ module.exports = {
9
+ // eslint-disable-next-line no-unused-vars
10
+ up: async (queryInterface, Sequelize) => {
11
+ await queryInterface.sequelize.transaction(async transaction => {
12
+ await queryInterface.removeConstraint(table, `${table}_createTime_sha_key`, { transaction });
13
+
14
+ await queryInterface.addConstraint(table, {
15
+ fields: ['sha', 'createTime', 'pipelineId'],
16
+ name: `${table}_createTime_sha_pid_key`,
17
+ type: 'unique',
18
+ transaction
19
+ });
20
+ });
21
+ }
22
+ };
package/models/event.js CHANGED
@@ -166,7 +166,7 @@ module.exports = {
166
166
  * @property keys
167
167
  * @type {Array}
168
168
  */
169
- keys: ['sha', 'createTime'],
169
+ keys: ['sha', 'createTime', 'pipelineId'],
170
170
 
171
171
  /**
172
172
  * Primary column to sort queries by.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "screwdriver-data-schema",
3
- "version": "21.19.0",
3
+ "version": "21.21.0",
4
4
  "description": "Internal Data Schema of Screwdriver",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -43,15 +43,16 @@
43
43
  "eslint": "^7.32.0",
44
44
  "eslint-config-screwdriver": "^5.0.1",
45
45
  "js-yaml": "^3.14.1",
46
- "mocha": "^8.4.0",
46
+ "mocha": "^9.2.0",
47
47
  "mocha-multi-reporters": "^1.5.1",
48
48
  "mocha-sonarqube-reporter": "^1.0.2",
49
49
  "mysql2": "^1.7.0",
50
50
  "nyc": "^15.0.0",
51
51
  "pg": "^7.18.2",
52
- "sequelize": "^5.22.5",
53
- "sequelize-cli": "^5.5.1",
54
- "sqlite3": "^5.0.0"
52
+ "sequelize": "^6.6.5",
53
+ "sequelize-cli": "^6.4.1",
54
+ "sqlite3": "^4.2.0",
55
+ "npx": "^10.2.2"
55
56
  },
56
57
  "dependencies": {
57
58
  "cron-parser": "^4.2.1",