Deployment to Google Cloud Run using Angular v17 Application Builder not working
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- angular, firebase, google-cloud, typescript
- Domaine
- build-system, cloud, devops
Piste de recherche
Commencez par exécuter npx nx run app:build --configuration=production et inspectez src/schematics/deploy/actions.ts autour du code de déploiement Cloud Run indiqué dans l’issue. Comparez les sorties dist/.../browser et server de l’Angular application builder avec les chemins utilisés pour le déploiement, puis vérifiez que le déploiement réussit avec cette configuration.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Version info
Angular:
17.2.2
Firebase:
13.3.1
AngularFire:
17.0.1
Other (e.g. Ionic/Cordova, Node, browser, operating system):
Node 20
How to reproduce these conditions
Use @angular/fire with the new @angular-devkit/build-angular:application.
Failing test unit, Stackblitz demonstrating the problem
Steps to set up and reproduce
Start a new repo with the following configuration (I used Nx with project.json, but vanilla angular.json also works):
// ...
"targets": {
"build": {
"executor": "@angular-devkit/build-angular:application",
"outputs": ["{options.outputPath}"],
"options": {
"outputPath": "dist/apps/app",
}
}
"deploy": {
"executor": "@angular/fire:deploy",
"configurations": {
"production": {
"buildTarget": "app:build:production",
"serveTarget": "app:build:production"
}
},
}
Then execute the target using npx nx run app:build --configuration=production. This creates the following structre:
dist/
|_ apps/
|_ app/
|_ browser/
|_ server/
|_ ...
|_ main.server.mjs
|_ server.mjs
But this code to deploy to Cloud Run still uses the old main.js. Also, it is using the outputPath from the build target, but since that outputPath does not contain browser or server, the final path needs to have this folder added too.
The change can be something like this (I have not tested this):
const packageJson = getPackageJson(context, workspaceRoot, options, join(serverBuildOptions.outputPath, 'main.js'));
...to something like this:
const packageJson = getPackageJson(context, workspaceRoot, options, join(serverBuildOptions.outputPath, 'server', 'main.server.mjs'));
...and probably more than this.
Sample data and security rules
Debug output
** Errors in the JavaScript console **
** Output from firebase.database().enableLogging(true); **
** Screenshots **
Expected behavior
Upload to Cloud Run using Angular v17 @angular-devkit/build-angular:application should work.
Actual behavior
Upload to Cloud Run fails for Angular v17 with @angular-devkit/build-angular:application.
- Langage dominant
- TypeScript
- Étoiles
- 7.8k
- Forks
- 2.2k
- Merge moyen
- 3 j 6 h
- PR mergées (30 j)
- 5
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de angular/angularfire
-
comp: build/pipeline type: bug version: current (v17+)
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
angular/angularfire#3766 ·
-
comp: schematics type: bug version: current (v17+)
Difficulté 3/5 1-2 jours Accessibilité débutants 76/100
angular/angularfire#3768 ·
-
comp: docs type: chore version: current (v17+)
Difficulté 4/5 3-5 jours Accessibilité débutants 58/100
angular/angularfire#3764 ·
-
comp: firestore comp: ssr priority: P0 (critical) type: feature version: current (v17+)
angular/angularfire#3757 · 1 personne assignée ·
-
Six `firebase` entry points have no `@angular/fire` equivalent, so their exports are unreachable Ouvertecomp: core type: feature
angular/angularfire#3755 · 1 personne assignée ·
Toutes les issues de angular/angularfire
Issues similaires
-
blocklist removal
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
pastelsky/bundlephobia#1122 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
category/development priority/P2 scope/file-operations scope/testing type/enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100