@@ -16,6 +16,7 @@ import (
1616 appsvc "altinn.studio/studioctl/internal/cmd/app"
1717 "altinn.studio/studioctl/internal/config"
1818 repocontext "altinn.studio/studioctl/internal/context"
19+ "altinn.studio/studioctl/internal/envtopology"
1920 "altinn.studio/studioctl/internal/osutil"
2021 "altinn.studio/studioctl/internal/studio"
2122 "altinn.studio/studioctl/internal/studioctlserver"
@@ -48,6 +49,7 @@ type appBuildFlags struct {
4849 mode string
4950 imageTag string
5051 push bool
52+ devFrontend bool
5153 jsonOutput bool
5254}
5355
@@ -167,6 +169,9 @@ func (c *AppCommand) runBuild(ctx context.Context, args []string) error {
167169 if err != nil {
168170 return fmt .Errorf ("build docker image spec: %w" , err )
169171 }
172+ if err := appimage .SetAppFrontendAssetBaseURL (& spec , appBuildFrontendAssetBaseURL (flags )); err != nil {
173+ return fmt .Errorf ("set app frontend asset base URL: %w" , err )
174+ }
170175 cleanupDockerfile , err := appimage .MaterializeDockerfile (& spec )
171176 if err != nil {
172177 return fmt .Errorf ("materialize dockerfile: %w" , err )
@@ -213,6 +218,7 @@ func (c *AppCommand) parseAppBuildFlags(args []string) (appBuildFlags, bool, err
213218 fs .StringVar (& flags .mode , "mode" , runModeContainer , "Build mode" )
214219 fs .StringVar (& flags .imageTag , "image-tag" , "" , "App container image tag" )
215220 fs .BoolVar (& flags .push , "push" , false , "Push app container image after build" )
221+ fs .BoolVar (& flags .devFrontend , "dev-frontend" , false , "Use frontend dev server assets" )
216222 fs .BoolVar (& flags .jsonOutput , "json" , false , "Output as JSON" )
217223
218224 if err := fs .Parse (args ); err != nil {
@@ -240,13 +246,22 @@ func (c *AppCommand) appBuildUsage() string {
240246 "Options:" ,
241247 " -p, --path PATH Specify app directory (overrides auto-detect)" ,
242248 " -m, --mode MODE Build mode: container (default: container)" ,
249+ " --dev-frontend Use frontend dev server assets" ,
243250 " --image-tag IMAGE App container image tag" ,
244251 " --push Push app container image after build" ,
245252 " --json Output as JSON" ,
246253 " -h, --help Show this help" ,
247254 )
248255}
249256
257+ func appBuildFrontendAssetBaseURL (flags appBuildFlags ) string {
258+ if ! flags .devFrontend {
259+ return ""
260+ }
261+ topology := envtopology .NewLocal (envtopology .DefaultIngressPortString ())
262+ return topology .PublicBaseURL (envtopology .ComponentFrontendDevServer )
263+ }
264+
250265func (c * AppCommand ) runUpdate (ctx context.Context , args []string ) error {
251266 fs := flag .NewFlagSet ("app update" , flag .ContinueOnError )
252267 var appPath string
0 commit comments