@equinor/fusion-framework-cli 11.0.0 → 11.0.1

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.
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '11.0.0';
2
+ export const version = '11.0.1';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- export declare const version = "11.0.0";
1
+ export declare const version = "11.0.1";
@@ -1,71 +1,10 @@
1
- ---
2
- title: Developing Apps with Fusion Framework CLI
3
- description: >
4
- In-depth guide to building, configuring, and deploying applications using the Fusion Framework CLI. Includes setup, essential commands, configuration files, CI/CD best practices, troubleshooting, and advanced tips for modern app development.
5
- category: cli
6
- related:
7
- - ./auth.md
8
- - ./migration-v10-to-v11.md
9
- tags:
10
- - getting-started
11
- - app-development
12
- - configuration
13
- - deployment
14
- - ci-cd
15
- - commands
16
- - troubleshooting
17
- - release-management
18
- - automation
19
- - best-practices
20
- - migration
21
- keywords:
22
- - fusion-framework-cli upload
23
- - fusion-framework-cli publish
24
- - fusion-framework-cli tag
25
- - fusion-framework-cli config
26
- - fusion-framework-cli build
27
- - fusion-framework-cli pack
28
- - fusion-framework-cli check
29
- - fusion-framework-cli manifest
30
- - fusion-framework-cli troubleshooting
31
- - fusion-framework-cli deployment
32
- - fusion-framework-cli ci-cd
33
- - fusion app upload
34
- - fusion app publish
35
- - fusion app tag
36
- - fusion app config
37
- - fusion app build
38
- - fusion app pack
39
- - fusion app check
40
- - fusion app manifest
41
- - fusion app troubleshooting
42
- - fusion app deployment
43
- - fusion app ci-cd
44
- - fusion cli command reference
45
- - fusion cli options
46
- - fusion cli arguments
47
- ---
48
-
49
- # Fusion Framework CLI: Application Development Guide
50
-
51
- > **Table of Contents**
52
- > - [Getting Started](#getting-started)
53
- > - [Prerequisites](#prerequisites)
54
- > - [Troubleshooting & FAQ](#troubleshooting--faq)
55
- > - [Configuration](#configuration)
56
- > - [CI/CD Best Practices](#cicd)
57
- > - [Command Reference](#commands)
58
- > - [Migration & Deprecated Commands](#aliases)
59
-
60
- ---
61
-
62
1
  The Fusion Framework CLI empowers you to rapidly build, configure, and deploy modern applications with ease. Whether you’re starting a new project or maintaining an existing app, this CLI streamlines your workflow—from local development to production deployment.
63
2
 
64
3
  This guide will help you get set up, understand the most important commands, and follow best practices for configuration and CI/CD. Let’s get started building robust, scalable apps with Fusion Framework!
65
4
 
66
5
  ## Getting Started
67
6
 
68
- ### 1. Install the CLI
7
+ ### Install the CLI
69
8
 
70
9
  ```sh
71
10
  pnpm add -D @equinor/fusion-framework-cli
@@ -73,7 +12,7 @@ pnpm add -D @equinor/fusion-framework-cli
73
12
  npm install --save-dev @equinor/fusion-framework-cli
74
13
  ```
75
14
 
76
- ### 2. Scaffold a New App (if supported)
15
+ ### Scaffold a New App (if supported)
77
16
 
78
17
  > **Tip:** If you have a template or starter, clone it. Otherwise, create a new directory and initialize your project as below.
79
18
 
@@ -82,7 +21,7 @@ mkdir my-fusion-app && cd my-fusion-app
82
21
  pnpm init
83
22
  ```
84
23
 
85
- ### 3. Create Required Files
24
+ ### Create Required Files
86
25
 
87
26
  #### Minimal `package.json` Example
88
27
 
@@ -140,13 +79,13 @@ export default defineAppConfig((env, args) => ({
140
79
  }));
141
80
  ```
142
81
 
143
- ### 4. Start the Development Server
82
+ ### Start the Development Server
144
83
 
145
84
  ```sh
146
85
  pnpm fusion-framework-cli dev
147
86
  ```
148
87
 
149
- ### 5. Log in to Fusion Framework (if needed)
88
+ ### Log in to Fusion Framework (if needed)
150
89
 
151
90
  > [!NOTE]
152
91
  > __All HTTP requests to Fusion services require an authorized user.__
@@ -155,7 +94,7 @@ pnpm fusion-framework-cli dev
155
94
  > [!WARNING]
156
95
  > The `fusion-framework-cli auth login` command is only available in interactive environments (such as your local terminal). For CI/CD pipelines or automated deployments, you must provide a valid authentication token using the `FUSION_TOKEN` environment variable.
157
96
  >
158
- > See [Authentication](./auth.md#setting-the-fusion-token-in-github) for details on setting up tokens for CI/CD.
97
+ > See [Authentication](auth.md#setting-the-fusion-token-in-github) for details on setting up tokens for CI/CD.
159
98
 
160
99
  ```sh
161
100
  pnpm fusion-framework-cli auth login
@@ -317,7 +256,7 @@ jobs:
317
256
  ```
318
257
 
319
258
  > [!TIP]
320
- > see [setting-the-fusion-token-in-github](./auth.md#setting-the-fusion-token-in-github) for adding `FUSION_TOKEN` to your envirnoment
259
+ > see [setting-the-fusion-token-in-github](auth.md#setting-the-fusion-token-in-github) for adding `FUSION_TOKEN` to your environment
321
260
 
322
261
 
323
262
  ### Example: Using Environment Variables in App Config
@@ -689,11 +628,11 @@ pnpm fusion-framework-cli build-pack
689
628
 
690
629
  > [!WARNING]
691
630
  > The deprecated commands will be removed in future versions. Please update your scripts and workflows to use the new command names (`pack`, `upload`, `manifest`, `publish`) to ensure compatibility with v11 and beyond.
692
- > For a full migration guide, see [Migration v10 to v11](./migration-v10-to-v11.md).
631
+ > For a full migration guide, see [Migration v10 to v11](migration-v10-to-v11.md).
693
632
 
694
633
  ---
695
634
 
696
635
  > **Need more examples?**
697
- > - See the [cookbooks/](../../cookbooks/) directory for real-world app examples.
698
- > - For migration help, see [Migration v10 to v11](./migration-v10-to-v11.md).
699
- > - For advanced configuration, see [Authentication](./auth.md) and [CI/CD](#cicd).
636
+ > - See the [cookbooks directory in the GitHub repository](https://github.com/equinor/fusion-framework/tree/main/cookbooks) for real-world app examples.
637
+ > - For migration help, see [Migration v10 to v11](migration-v10-to-v11.md).
638
+ > - For advanced configuration, see [Authentication](auth.md) and [CI/CD](#ci-cd).
package/docs/auth.md CHANGED
@@ -1,49 +1,6 @@
1
- ---
2
- title: Fusion Framework CLI - Authorization
3
- description: >
4
- Comprehensive guide to authentication and authorization in the Fusion Framework CLI, covering Azure AD, MSAL, local development, CI/CD, service principals, and best practices for secure automation and integration.
5
- category: cli
6
- related:
7
- - '@equinor/fusion-framework-module-msal-node/README.md'
8
- tags:
9
- - cli
10
- - fusion-framework
11
- - msal
12
- - azure
13
- - azure-ad
14
- - authentication
15
- - authorization
16
- - service-principal
17
- - github-actions
18
- - ci
19
- - cd
20
- - devops
21
- - security
22
- keywords:
23
- - azure ad
24
- - msal
25
- - access token
26
- - authentication flow
27
- - interactive login
28
- - silent authentication
29
- - token caching
30
- - secure storage
31
- - app registration
32
- - tenant id
33
- - client id
34
- - scopes
35
- - api permissions
36
- - oidc
37
- - sso
38
- - cloud identity
39
- - developer experience
40
- ---
41
-
42
- # Authentication with Fusion Framework CLI
43
-
44
1
  The Fusion Framework CLI provides secure, robust authentication for both automation and interactive development scenarios by leveraging Microsoft's MSAL (Microsoft Authentication Library) and Azure Active Directory (Azure AD). Authentication is handled through the Fusion Framework for Node.js, using the `@equinor/fusion-framework-module-msal-node` package, which is built on top of Microsoft's official `msal-node` library. This ensures standards-compliant, up-to-date authentication flows and seamless integration across Fusion Framework applications and tools.
45
2
 
46
- Key features include:
3
+ ## Key features
47
4
  - **Multiple authentication modes:**
48
5
  - `token_only`: Use a pre-provided token (e.g., for CI/CD and automation).
49
6
  - `silent`: Acquire tokens silently using cached or refresh tokens (background services, scripts).
package/docs/libsecret.md CHANGED
@@ -1,34 +1,3 @@
1
- ---
2
- title: Enabling Secure Credential Storage with libsecret
3
- description: Instructions for installing libsecret on Linux to enable secure credential storage for your CLI.
4
- tags:
5
- - cli
6
- - authentication
7
- - keytar
8
- - libsecret
9
- - linux
10
- - security
11
- - credentials
12
- - msal
13
- - nodejs
14
- - keychain
15
- keywords:
16
- - secure credential storage
17
- - keychain
18
- - linux
19
- - node.js
20
- - password manager
21
- - system keyring
22
- - msal-node
23
- - credential storage
24
- - cross-platform
25
- - token caching
26
- - npm
27
- - secrets
28
- - cli authentication
29
- - keytar troubleshooting
30
- ---
31
-
32
1
  This CLI enables secure authentication and persistent token caching by storing credentials in your system's keychain. It uses [`@azure/msal-node`](https://github.com/AzureAD/microsoft-authentication-library-for-js/tree/dev/lib/msal-node) for authentication, which relies on the [`keytar`](https://github.com/atom/node-keytar) module for secure credential storage.
33
2
 
34
3
  > **What is `libsecret`?**
@@ -1,31 +1,3 @@
1
- ---
2
- title: Migration Guide - v10 to v11 CLI Command Changes
3
- description: >
4
- Comprehensive guide to migrating CLI commands from v10 to v11 of the Fusion Framework, including deprecated commands, new command names, authentication changes, and best practices for updating scripts and pipelines.
5
- category: cli
6
- related:
7
- - ./auth.md
8
- - ./application.md
9
- tags:
10
- - cli
11
- - fusion-framework
12
- - migration
13
- - breaking-changes
14
- - upgrade
15
- keywords:
16
- - fusion framework
17
- - cli commands
18
- - v10 to v11 migration
19
- - deprecated commands
20
- - authentication changes
21
- - service discovery
22
- - environment configuration
23
- - upgrade guide
24
- - best practices
25
- ---
26
-
27
- # Migration Guide: v10 to v11 CLI Command Changes
28
-
29
1
  With v11, we switched to using the Fusion Framework itself for CLI operations. This change was made to reduce maintenance and improve consistency by reusing the same framework modules (such as service-discovery, authentication, and HTTP) in both Node.js and browser environments. By leveraging the Fusion Framework directly, CLI features and integrations stay up-to-date and benefit from shared improvements across the ecosystem.
30
2
 
31
3
  ## Why This Matters
@@ -33,7 +5,19 @@ With v11, we switched to using the Fusion Framework itself for CLI operations. T
33
5
  - **Reduced duplication:** By reusing core modules, bug fixes and new features are shared between CLI and Framework code.
34
6
  - **Performance:** The framework is now initialized only when needed (e.g., for HTTP calls or authentication), improving startup time and resource usage.
35
7
 
36
- ## Command Changes
8
+ ## Package Changes
9
+
10
+ - The CLI will now resolve source entrypoint by default from `src/(index.tsx|ts)|(main.tsx|ts)` (unless configured otherwise).
11
+ - The CLI will resolve the output entrypoint by `main`|`module` in `package.json`.
12
+ - This is to enable serving the application in preview mode (`import.meta.resolve('PACKAGE_NAME')`).
13
+
14
+ > [!IMPORTANT]
15
+ > Ensure your application is compatible with these changes before upgrading.
16
+ > ```json
17
+ > {
18
+ > "main": "dist/index.js",
19
+ > }
20
+ > ```
37
21
 
38
22
  ### Deprecated App Command Aliases
39
23
 
@@ -67,15 +51,15 @@ Authentication behavior has been updated to improve security and consistency:
67
51
 
68
52
  When upgrading from v10 to v11, ensure you:
69
53
 
70
- - [ ] **Update command names** in all scripts and CI/CD pipelines:
71
- - `build-pack` → `pack`
72
- - `build-upload` → `upload`
73
- - `build-manifest` → `manifest`
74
- - `build-publish` → `publish`
75
- - [ ] **Replace `--service` with `--env`** for environment selection
76
- - [ ] **Update local development workflow** to use `fusion-framework-cli auth login`
77
- - [ ] **Review custom integrations** that may depend on CLI startup behavior (now on-demand)
78
- - [ ] **Update documentation** and team guidelines with new command syntax
54
+ - **Update command names** in all scripts and CI/CD pipelines:
55
+ - `build-pack` → `pack`
56
+ - `build-upload` → `upload`
57
+ - `build-manifest` → `manifest`
58
+ - `build-publish` → `publish`
59
+ - **Replace `--service` with `--env`** for environment selection
60
+ - **Update local development workflow** to use `fusion-framework-cli auth login`
61
+ - **Review custom integrations** that may depend on CLI startup behavior (now on-demand)
62
+ - **Update documentation** and team guidelines with new command syntax
79
63
 
80
64
  ## Getting Help
81
65
 
package/docs/portal.md CHANGED
@@ -1,37 +1,3 @@
1
- ---
2
- title: Developing Portals with Fusion Framework CLI
3
- description: >
4
- Guide to building, configuring, and deploying portal templates using the Fusion Framework CLI. Includes setup, essential commands, configuration, troubleshooting, and best practices for portal development.
5
- category: cli
6
- related:
7
- - ./auth.md
8
- tags:
9
- - portal-development
10
- - configuration
11
- - deployment
12
- - commands
13
- - troubleshooting
14
- - best-practices
15
- keywords:
16
- - fusion-framework-cli portal
17
- - fusion portal dev
18
- - fusion portal build
19
- - fusion portal pack
20
- - fusion portal upload
21
- - fusion portal tag
22
- - fusion portal manifest
23
- ---
24
-
25
- # Fusion Framework CLI: Portal Template Development Guide
26
-
27
- > **Table of Contents**
28
- > - [Getting Started](#getting-started)
29
- > - [Portal Manifest](#portal-manifest)
30
- > - [Commands](#commands)
31
- > - [Troubleshooting & FAQ](#troubleshooting--faq)
32
-
33
- ---
34
-
35
1
  The Fusion Framework CLI enables you to build, configure, and deploy **portal templates** for the Fusion ecosystem. These commands are specifically for creating, building, and managing portal templates—not for managing actual portals.
36
2
 
37
3
  > **What is a Portal Template?**
@@ -44,7 +10,7 @@ This guide covers the essential commands and best practices for developing and m
44
10
 
45
11
  ## Getting Started
46
12
 
47
- ### 1. Install the CLI
13
+ ### Install the CLI
48
14
 
49
15
  ```sh
50
16
  pnpm add -D @equinor/fusion-framework-cli
@@ -52,7 +18,7 @@ pnpm add -D @equinor/fusion-framework-cli
52
18
  npm install --save-dev @equinor/fusion-framework-cli
53
19
  ```
54
20
 
55
- ### 2. Scaffold a New Portal
21
+ ### Scaffold a New Portal
56
22
 
57
23
  Create a new directory for your portal and initialize your project:
58
24
 
@@ -61,7 +27,7 @@ mkdir my-fusion-portal && cd my-fusion-portal
61
27
  pnpm init
62
28
  ```
63
29
 
64
- ### 3. Create Required Files
30
+ ### Create Required Files
65
31
 
66
32
  - `portal.manifest.ts`: Defines your portal's metadata and configuration.
67
33
  - `portal.schema.ts` (optional): Defines the schema for portal configuration.
@@ -275,4 +241,4 @@ pnpm fusion-framework-cli portal schema portal.schema.prod.ts --debug
275
241
 
276
242
  ---
277
243
 
278
- For advanced configuration and authentication, see [Authentication](./auth.md).
244
+ For advanced configuration and authentication, see [Authentication](auth.md).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@equinor/fusion-framework-cli",
3
- "version": "11.0.0",
3
+ "version": "11.0.1",
4
4
  "keywords": [
5
5
  "Fusion",
6
6
  "Fusion Framework",
@@ -100,10 +100,10 @@
100
100
  "read-package-up": "^11.0.0",
101
101
  "vite": "^6.3.5",
102
102
  "zod": "^3.25.76",
103
- "@equinor/fusion-framework-dev-portal": "^1.0.0",
103
+ "@equinor/fusion-framework-dev-portal": "^1.0.1",
104
104
  "@equinor/fusion-framework-dev-server": "^1.0.0",
105
- "@equinor/fusion-framework-module-msal-node": "^1.0.0",
106
- "@equinor/fusion-imports": "^1.1.1"
105
+ "@equinor/fusion-imports": "^1.1.1",
106
+ "@equinor/fusion-framework-module-msal-node": "^1.0.1"
107
107
  },
108
108
  "devDependencies": {
109
109
  "@rollup/plugin-commonjs": "^28.0.3",
@@ -113,7 +113,7 @@
113
113
  "@types/adm-zip": "^0.5.0",
114
114
  "adm-zip": "^0.5.10",
115
115
  "ajv": "^8.17.1",
116
- "chalk": "^5.3.0",
116
+ "chalk": "^5.6.0",
117
117
  "is-ci": "^4.1.0",
118
118
  "open": "^10.1.1",
119
119
  "pretty-bytes": "^7.0.0",
@@ -122,8 +122,8 @@
122
122
  "rxjs": "^7.8.1",
123
123
  "type-fest": "^4.40.0",
124
124
  "typescript": "^5.8.2",
125
- "@equinor/fusion-framework-module-app": "^6.1.17",
126
125
  "@equinor/fusion-framework-module": "^5.0.0",
126
+ "@equinor/fusion-framework-module-app": "^6.1.17",
127
127
  "@equinor/fusion-framework-module-http": "^6.3.4",
128
128
  "@equinor/fusion-framework-module-service-discovery": "^8.0.18"
129
129
  },