2
votes

I'm setting up to deploy my Angular App to Firebase Hosting. But it just makes a default firebase index hosting, nothing change.

I had use firebase init and my dist dir public, ng build --prod to make app dist dir after that use firebase deploy.

ng build --prod make only a dist folder with all file. It does not contain any subfolder.

Firebase said that: I must add Firebase SDK, but I don't know where to add.

kaonashichan:toh noface$ firebase init

     ######## #### ########  ######## ########     ###     ######  ########
     ##        ##  ##     ## ##       ##     ##  ##   ##  ##       ##
     ######    ##  ########  ######   ########  #########  ######  ######
     ##        ##  ##    ##  ##       ##     ## ##     ##       ## ##
     ##       #### ##     ## ######## ########  ##     ##  ######  ########

You're about to initialize a Firebase project in this directory:

  /Users/noface

Before we get started, keep in mind:

  * You are initializing in an existing Firebase project directory

? Which Firebase CLI features do you want to set up for this folder? Press Space to select features, then Enter to confirm your choices. Hosting: Conf
igure and deploy Firebase Hosting sites

=== Project Setup

First, let's associate this project directory with a Firebase project.
You can create multiple project aliases by running firebase use --add, 
but for now we'll just set up a default project.

i  .firebaserc already has a default project, skipping

=== Hosting Setup

Your public directory is the folder (relative to your project directory) that
will contain Hosting assets to be uploaded with firebase deploy. If you
have a build process for your assets, use your build's output directory.

? What do you want to use as your public directory? dist
? Configure as a single-page app (rewrite all urls to /index.html)? Yes
? File dist/index.html already exists. Overwrite? No
i  Skipping write of dist/index.html

i  Writing configuration info to firebase.json...
i  Writing project information to .firebaserc...

✔  Firebase initialization complete!
kaonashichan:toh noface$ ng build --prod

Date: 2019-05-13T04:13:50.154Z
Hash: bbc9e5b91e532fbd9570
Time: 31202ms
chunk {0} runtime.ec2944dd8b20ec099bf3.js (runtime) 1.41 kB [entry] [rendered]
chunk {1} main.c10271b9fdcd6058774f.js (main) 376 kB [initial] [rendered]
chunk {2} polyfills.f03d03a35f15175f61b1.js (polyfills) 66.4 kB [initial] [rendered]
chunk {3} styles.167b12e8ea2d1f694d59.css (styles) 765 bytes [initial] [rendered]
kaonashichan:toh noface$ firebase deploy
kaonashichan:toh noface$ firebase deploy

=== Deploying to 'autochessmo'...

i  deploying hosting
i  hosting[autochessmo]: beginning deploy...
i  hosting[autochessmo]: found 2 files in dist
✔  hosting[autochessmo]: file upload complete
i  hosting[autochessmo]: finalizing version...
✔  hosting[autochessmo]: version finalized
i  hosting[autochessmo]: releasing new version...
✔  hosting[autochessmo]: release complete

✔  Deploy complete!
1
What are the contents of the dist folder after running the ng build command? Newer versions of @angular/cli put the application into a sub folder of dist. If that’s the case then you need to update the firebase deploy configuration to target the sub folder within dist. - Alexander Staroselsky
imgur.com/sEYGm8B This is my dist dir after building. and I used npm install -g @angular/cli command to install angular cli so I think it's newest version. - Diện Vô
Don't know why my ng build --prod is not made the-project-name subfolder, just dist as root with all file. - Diện Vô

1 Answers

0
votes

I had solved my problem. Don't know why firebase makes firebase.json file at user/name folder instead of my project folder. I just delete it and everything goes right!