@basemaps/cli 6.24.2 → 6.27.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.
Files changed (46) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/build/cli/cogify/__test__/batch.job.test.d.ts +2 -0
  3. package/build/cli/cogify/__test__/batch.job.test.d.ts.map +1 -0
  4. package/build/cli/cogify/__test__/batch.job.test.js +69 -0
  5. package/build/cli/cogify/action.cog.d.ts +1 -1
  6. package/build/cli/cogify/action.cog.d.ts.map +1 -1
  7. package/build/cli/cogify/action.cog.js +103 -53
  8. package/build/cli/cogify/action.job.d.ts +1 -0
  9. package/build/cli/cogify/action.job.d.ts.map +1 -1
  10. package/build/cli/cogify/action.job.js +10 -3
  11. package/build/cli/cogify/{action.batch.d.ts → batch.job.d.ts} +11 -13
  12. package/build/cli/cogify/batch.job.d.ts.map +1 -0
  13. package/build/cli/cogify/{action.batch.js → batch.job.js} +88 -62
  14. package/build/cli/cogify/imagery.config.d.ts +13 -0
  15. package/build/cli/cogify/imagery.config.d.ts.map +1 -0
  16. package/build/cli/cogify/imagery.config.js +46 -0
  17. package/build/cli/cogify/index.d.ts.map +1 -1
  18. package/build/cli/cogify/index.js +0 -2
  19. package/build/cli/folder.d.ts +2 -0
  20. package/build/cli/folder.d.ts.map +1 -1
  21. package/build/cli/folder.js +6 -0
  22. package/build/cli/util.d.ts +5 -0
  23. package/build/cli/util.d.ts.map +1 -1
  24. package/build/cli/util.js +14 -1
  25. package/build/cog/__test__/cog.stac.job.test.js +1 -0
  26. package/build/cog/builder.d.ts +1 -5
  27. package/build/cog/builder.d.ts.map +1 -1
  28. package/build/cog/builder.js +4 -28
  29. package/build/cog/cog.stac.job.d.ts +11 -0
  30. package/build/cog/cog.stac.job.d.ts.map +1 -1
  31. package/build/cog/cog.stac.job.js +5 -4
  32. package/build/cog/constants.d.ts +1 -1
  33. package/build/cog/constants.d.ts.map +1 -1
  34. package/build/cog/constants.js +1 -1
  35. package/build/cog/cutline.d.ts +1 -1
  36. package/build/cog/cutline.d.ts.map +1 -1
  37. package/build/cog/cutline.js +2 -2
  38. package/build/cog/job.factory.d.ts.map +1 -1
  39. package/build/cog/job.factory.js +8 -9
  40. package/build/cog/types.d.ts +1 -0
  41. package/build/cog/types.d.ts.map +1 -1
  42. package/package.json +5 -5
  43. package/build/cli/cogify/__test__/action.batch.test.d.ts +0 -2
  44. package/build/cli/cogify/__test__/action.batch.test.d.ts.map +0 -1
  45. package/build/cli/cogify/__test__/action.batch.test.js +0 -23
  46. package/build/cli/cogify/action.batch.d.ts.map +0 -1
@@ -1,12 +1,11 @@
1
1
  import { Bounds } from '@basemaps/geo';
2
2
  import { fsa, isConfigS3Role, isFileConfigPath, LogConfig } from '@basemaps/shared';
3
- import { basename } from 'path';
4
3
  import * as ulid from 'ulid';
5
4
  import { CogBuilder } from '../index.js';
6
- import { ActionBatchJob } from '../cli/cogify/action.batch.js';
7
- import { Gdal } from '../gdal/gdal.js';
5
+ import { BatchJob } from '../cli/cogify/batch.job.js';
8
6
  import { CogStacJob } from './cog.stac.job.js';
9
7
  import { Cutline } from './cutline.js';
8
+ import { basename } from 'path';
10
9
  export const MaxConcurrencyDefault = 50;
11
10
  function filterTiff(a) {
12
11
  const lowerA = a.toLowerCase();
@@ -17,12 +16,12 @@ export const CogJobFactory = {
17
16
  * Create a COG Job and potentially submit it to AWS Batch for processing
18
17
  */
19
18
  async create(ctx) {
20
- var _a, _b, _c, _d, _e, _f;
19
+ var _a, _b, _c, _d, _e, _f, _g;
21
20
  const id = (_b = (_a = ctx.override) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : ulid.ulid();
22
- const imageryName = basename(ctx.sourceLocation.path).replace(/\./g, '-'); // batch does not allow '.' in names
21
+ let imageryName = ctx.imageryName;
22
+ if (imageryName == null)
23
+ imageryName = basename(ctx.sourceLocation.path);
23
24
  const logger = LogConfig.get().child({ id, imageryName });
24
- const gdalVersion = await Gdal.version(logger);
25
- logger.info({ version: gdalVersion }, 'GdalVersion');
26
25
  const { sourceLocation } = ctx;
27
26
  logger.info({ source: ctx.sourceLocation.path, sourceRole: isConfigS3Role(sourceLocation) && sourceLocation.roleArn }, 'ListTiffs');
28
27
  fsa.configure(sourceLocation);
@@ -34,7 +33,7 @@ export const CogJobFactory = {
34
33
  logger.info({ source: sourceLocation.path, tiffCount: tiffList.length }, 'LoadingTiffs');
35
34
  const cutline = new Cutline(ctx.tileMatrix, ctx.cutline && (await Cutline.loadCutline(ctx.cutline.href)), (_e = ctx.cutline) === null || _e === void 0 ? void 0 : _e.blend, ctx.oneCogCovering);
36
35
  const builder = new CogBuilder(ctx.tileMatrix, maxConcurrency, logger, (_f = ctx.override) === null || _f === void 0 ? void 0 : _f.projection);
37
- const metadata = await builder.build(tiffSource, cutline);
36
+ const metadata = await builder.build(tiffSource, cutline, (_g = ctx.override) === null || _g === void 0 ? void 0 : _g.maxImageSize);
38
37
  if (cutline.clipPoly.length === 0) {
39
38
  // no cutline needed for this imagery set
40
39
  ctx.cutline = undefined;
@@ -77,7 +76,7 @@ export const CogJobFactory = {
77
76
  cutlinePoly: cutline.clipPoly,
78
77
  });
79
78
  if (ctx.batch)
80
- await ActionBatchJob.batchJob(job, true, undefined, logger);
79
+ await BatchJob.batchJob(job, true, logger);
81
80
  logger.info({ tileMatrix: ctx.tileMatrix.identifier, job: job.getJobPath() }, 'Done');
82
81
  return job;
83
82
  },
@@ -54,6 +54,7 @@ export interface CogJobJson {
54
54
  description?: string;
55
55
  source: CogSourceProperties;
56
56
  output: CogOutputProperties;
57
+ processingId?: string;
57
58
  }
58
59
  export interface CogJob extends CogJobJson {
59
60
  tileMatrix: TileMatrixSet;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cog/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,WAAW,wBAAyB,SAAQ,OAAO,CAAC,iBAAiB;IACzE,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,QAAQ,EAAE,UAAU,CAAC;IAErB,0BAA0B;IAC1B,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,wBAAwB,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB,+EAA+E;IAC/E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe,EAAE,iBAAiB;IAC7E,iCAAiC;IACjC,MAAM,EAAE,WAAW,CAAC;IAEpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,CAAC;IAEf,sBAAsB;IACtB,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,0FAA0F;IAC1F,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,mBAAmB,CAAC;CAC7B;AAED,MAAM,WAAW,MAAO,SAAQ,UAAU;IACxC,UAAU,EAAE,aAAa,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,MAAM,EAAE,WAAW,EAAE,CAAC;IAEtB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IAEnB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAEhB,6BAA6B;IAC7B,UAAU,EAAE,QAAQ,CAAC;IAErB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,uCAAuC;IACvC,YAAY,EAAE,WAAW,CAAC;IAE1B,oDAAoD;IACpD,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cog/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,WAAW,wBAAyB,SAAQ,OAAO,CAAC,iBAAiB;IACzE,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,QAAQ,EAAE,UAAU,CAAC;IAErB,0BAA0B;IAC1B,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC5D,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,wBAAwB,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB,+EAA+E;IAC/E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe,EAAE,iBAAiB;IAC7E,iCAAiC;IACjC,MAAM,EAAE,WAAW,CAAC;IAEpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,CAAC;IAEf,sBAAsB;IACtB,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,0FAA0F;IAC1F,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,mBAAmB,CAAC;IAE5B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,MAAO,SAAQ,UAAU;IACxC,UAAU,EAAE,aAAa,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,MAAM,EAAE,WAAW,EAAE,CAAC;IAEtB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IAEnB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAEhB,6BAA6B;IAC7B,UAAU,EAAE,QAAQ,CAAC;IAErB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,uCAAuC;IACvC,YAAY,EAAE,WAAW,CAAC;IAE1B,oDAAoD;IACpD,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basemaps/cli",
3
- "version": "6.24.2",
3
+ "version": "6.27.0",
4
4
  "private": false,
5
5
  "repository": {
6
6
  "type": "git",
@@ -37,9 +37,9 @@
37
37
  "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
38
38
  },
39
39
  "dependencies": {
40
- "@basemaps/config": "^6.24.2",
41
- "@basemaps/geo": "^6.24.2",
42
- "@basemaps/shared": "^6.24.2",
40
+ "@basemaps/config": "^6.27.0",
41
+ "@basemaps/geo": "^6.26.0",
42
+ "@basemaps/shared": "^6.27.0",
43
43
  "@chunkd/fs": "^8.1.0",
44
44
  "@cogeotiff/core": "^7.0.0",
45
45
  "@linzjs/geojson": "^6.21.1",
@@ -60,5 +60,5 @@
60
60
  "files": [
61
61
  "build/"
62
62
  ],
63
- "gitHead": "12826558ede6a4e6ecdc0c250afc9a784b9cb40e"
63
+ "gitHead": "c6aa61c20503cbc7f04cf31927f4e2b95aed34cb"
64
64
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=action.batch.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.batch.test.d.ts","sourceRoot":"","sources":["../../../../src/cli/cogify/__test__/action.batch.test.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- import o from 'ospec';
2
- import { ActionBatchJob, extractResolutionFromName } from '../action.batch.js';
3
- o.spec('action.batch', () => {
4
- o('extractResolutionFromName', () => {
5
- o(extractResolutionFromName('2013')).equals(-1);
6
- o(extractResolutionFromName('new_zealand_sentinel_2018-19_10m')).equals(10000);
7
- o(extractResolutionFromName('abc2017def_1.00m')).equals(1000);
8
- o(extractResolutionFromName('wellington_urban_2017_0.10m')).equals(100);
9
- o(extractResolutionFromName('wellington_urban_2017_0-10m')).equals(100);
10
- o(extractResolutionFromName('wellington_urban_2017_1.00m')).equals(1000);
11
- o(extractResolutionFromName('wellington_urban_2017_0.025m')).equals(25);
12
- });
13
- o('should create valid jobNames', () => {
14
- const fakeJob = { id: '01FHRPYJ5FV1XAARZAC4T4K6MC', name: 'geographx_nz_texture_shade_2012_8-0m' };
15
- o(ActionBatchJob.id(fakeJob, '0')).equals('01FHRPYJ5FV1XAARZAC4T4K6MC-9af5e139bbb3e502-0');
16
- fakeJob.name = 'ōtorohanga_urban_2021_0.1m_RGB';
17
- o(ActionBatchJob.id(fakeJob, '0')).equals('01FHRPYJ5FV1XAARZAC4T4K6MC-5294acface81c107-0');
18
- });
19
- o('should truncate job names to 128 characters', () => {
20
- const fakeJob = { id: '01FHRPYJ5FV1XAARZAC4T4K6MC', name: 'geographx_nz_texture_shade_2012_8-0m' };
21
- o(ActionBatchJob.id(fakeJob, 'this is a really long file name it should over flow 128 characters so it should be truncated at some point.tiff')).equals('01FHRPYJ5FV1XAARZAC4T4K6MC-9af5e139bbb3e502-this is a really long file name it should over flow 128 characters so it should be t');
22
- });
23
- });
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.batch.d.ts","sourceRoot":"","sources":["../../../src/cli/cogify/action.batch.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,OAAO,EAAc,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAwD,MAAM,4BAA4B,CAAC;AACrH,OAAO,KAAK,MAAM,0BAA0B,CAAC;AAG7C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAS5C;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI9D;AAED,qBAAa,cAAe,SAAQ,iBAAiB;IACnD,OAAO,CAAC,GAAG,CAAC,CAA6B;IACzC,OAAO,CAAC,MAAM,CAAC,CAA2B;IAC1C,OAAO,CAAC,MAAM,CAAC,CAA6B;;IAU5C;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;WAMnC,QAAQ,CACnB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA6B9D;;;OAGG;WACU,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAqBrE,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;WAanB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,qBAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyD9G,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAqBrC"}