@lage-run/config 0.5.0 → 0.6.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.
package/CHANGELOG.json CHANGED
@@ -2,7 +2,22 @@
2
2
  "name": "@lage-run/config",
3
3
  "entries": [
4
4
  {
5
- "date": "Mon, 01 Sep 2025 08:10:04 GMT",
5
+ "date": "Thu, 25 Sep 2025 18:00:26 GMT",
6
+ "version": "0.6.0",
7
+ "tag": "@lage-run/config_v0.6.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "brunoru@microsoft.com",
12
+ "package": "@lage-run/config",
13
+ "commit": "38888a6891fa45232aeba64f222d17177114dd23",
14
+ "comment": "Enhance CredentialCache to support multiple Azure credential types and allow configuration of credentialName in cache options"
15
+ }
16
+ ]
17
+ }
18
+ },
19
+ {
20
+ "date": "Mon, 01 Sep 2025 08:10:36 GMT",
6
21
  "version": "0.5.0",
7
22
  "tag": "@lage-run/config_v0.5.0",
8
23
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,20 @@
1
1
  # Change Log - @lage-run/config
2
2
 
3
- <!-- This log was last generated on Mon, 01 Sep 2025 08:10:04 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Thu, 25 Sep 2025 18:00:26 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.6.0
8
+
9
+ Thu, 25 Sep 2025 18:00:26 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Enhance CredentialCache to support multiple Azure credential types and allow configuration of credentialName in cache options (brunoru@microsoft.com)
14
+
7
15
  ## 0.5.0
8
16
 
9
- Mon, 01 Sep 2025 08:10:04 GMT
17
+ Mon, 01 Sep 2025 08:10:36 GMT
10
18
 
11
19
  ### Minor changes
12
20
 
package/lib/index.d.ts CHANGED
@@ -5,5 +5,6 @@ export { readConfigFile } from "./readConfigFile.js";
5
5
  export type { PipelineDefinition } from "./types/PipelineDefinition.js";
6
6
  export type { ConfigOptions } from "./types/ConfigOptions.js";
7
7
  export type { CacheOptions } from "./types/CacheOptions.js";
8
+ export type { AzureCredentialName } from "./types/CacheOptions.js";
8
9
  export type { LoggerOptions } from "./types/LoggerOptions.js";
9
10
  export type { Priority } from "./types/Priority.js";
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export { getConfig } from \"./getConfig.js\";\nexport { getConcurrency } from \"./getConcurrency.js\";\nexport { getMaxWorkersPerTask, getMaxWorkersPerTaskFromOptions } from \"./getMaxWorkersPerTask.js\";\nexport { readConfigFile } from \"./readConfigFile.js\";\nexport type { PipelineDefinition } from \"./types/PipelineDefinition.js\";\nexport type { ConfigOptions } from \"./types/ConfigOptions.js\";\nexport type { CacheOptions } from \"./types/CacheOptions.js\";\nexport type { LoggerOptions } from \"./types/LoggerOptions.js\";\nexport type { Priority } from \"./types/Priority.js\";\n"],"names":["getConcurrency","getConfig","getMaxWorkersPerTask","getMaxWorkersPerTaskFromOptions","readConfigFile"],"mappings":";;;;;;;;;;;QACSA;eAAAA,8BAAc;;QADdC;eAAAA,oBAAS;;QAETC;eAAAA,0CAAoB;;QAAEC;eAAAA,qDAA+B;;QACrDC;eAAAA,8BAAc;;;2BAHG;gCACK;sCACuC;gCACvC"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export { getConfig } from \"./getConfig.js\";\nexport { getConcurrency } from \"./getConcurrency.js\";\nexport { getMaxWorkersPerTask, getMaxWorkersPerTaskFromOptions } from \"./getMaxWorkersPerTask.js\";\nexport { readConfigFile } from \"./readConfigFile.js\";\nexport type { PipelineDefinition } from \"./types/PipelineDefinition.js\";\nexport type { ConfigOptions } from \"./types/ConfigOptions.js\";\nexport type { CacheOptions } from \"./types/CacheOptions.js\";\nexport type { AzureCredentialName } from \"./types/CacheOptions.js\";\nexport type { LoggerOptions } from \"./types/LoggerOptions.js\";\nexport type { Priority } from \"./types/Priority.js\";\n"],"names":["getConcurrency","getConfig","getMaxWorkersPerTask","getMaxWorkersPerTaskFromOptions","readConfigFile"],"mappings":";;;;;;;;;;;QACSA;eAAAA,8BAAc;;QADdC;eAAAA,oBAAS;;QAETC;eAAAA,0CAAoB;;QAAEC;eAAAA,qDAA+B;;QACrDC;eAAAA,8BAAc;;;2BAHG;gCACK;sCACuC;gCACvC"}
@@ -1,10 +1,39 @@
1
1
  import type { Config as BackfillCacheOptions, CustomStorageConfig } from "backfill-config";
2
+ /** Allowed credential names matching camelCase of @azure/identity credential class names
3
+ * @see https://learn.microsoft.com/en-us/azure/developer/javascript/sdk/authentication/credential-chains
4
+ */
5
+ export type AzureCredentialName = "environment" | "workload-identity" | "managed-identity" | "visual-studio-code" | "azure-cli";
6
+ /** Locally augment only the Azure Blob connection-string options by adding an optional `credentialName`.
7
+ * This does NOT modify upstream types; it narrows and re-composes the union for our config surface.
8
+ */
9
+ type AzureBlobFromBackfill = Extract<BackfillCacheOptions["cacheStorageConfig"], {
10
+ provider: "azure-blob";
11
+ }>;
12
+ type AugmentedAzureBlobConfig = AzureBlobFromBackfill extends {
13
+ provider: "azure-blob";
14
+ options: infer O;
15
+ } ? {
16
+ provider: "azure-blob";
17
+ options: O extends any ? O extends {
18
+ connectionString: string;
19
+ } ? // Assumption: make `credentialName` optional to preserve backward compatibility
20
+ O & {
21
+ credentialName?: AzureCredentialName;
22
+ } : O : never;
23
+ } : never;
24
+ /** Recompose the cache storage config union to swap in our augmented Azure Blob type
25
+ * This is necessary because we want to add the `credentialName` property only to the Azure Blob config,
26
+ * without affecting other cache storage configs.
27
+ */
28
+ type ExtendedCacheStorageConfig = Exclude<BackfillCacheOptions["cacheStorageConfig"], {
29
+ provider: "azure-blob";
30
+ } | CustomStorageConfig> | AugmentedAzureBlobConfig;
2
31
  export type CacheOptions = Omit<BackfillCacheOptions, "cacheStorageConfig"> & {
3
32
  /**
4
33
  * Use this to specify a remote cache provider such as `'azure-blob'`.
5
34
  * @see https://github.com/microsoft/backfill#configuration
6
35
  */
7
- cacheStorageConfig?: Exclude<BackfillCacheOptions["cacheStorageConfig"], CustomStorageConfig>;
36
+ cacheStorageConfig?: ExtendedCacheStorageConfig;
8
37
  /**
9
38
  * Whether to write to the remote cache - useful for continuous integration systems to provide build-over-build cache.
10
39
  * It is recommended to turn this OFF for local development, turning remote cache to be a build acceleration through remote cache downloads.
@@ -25,3 +54,4 @@ export type CacheOptions = Omit<BackfillCacheOptions, "cacheStorageConfig"> & {
25
54
  */
26
55
  cacheKey?: string;
27
56
  };
57
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lage-run/config",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Config management for Lage",
5
5
  "repository": {
6
6
  "type": "git",