J'ai une configuration multisite avec des cibles. Utiliser npx firebase-tools deploy --only hosting
ou npx firebase-tools deploy --only hosting:bbbb
fonctionne très bien. Mais si j'utilise la nouvelle action GitHub, elle échoue sur la ligne :
/usr/local/bin/npx firebase-tools hosting:channel:deploy pr22-blah --expires 30d --project blah-dev --json
Exécuter la même chose localement échoue de la même manière. L'erreur est :
$ npx firebase-tools hosting:channel:deploy pr22-blah --only bbb --expires 30d --project blah-dev --json
{
"status": "error",
"error": "Hosting configs should only include either \"site\" or \"target\", not both."
}
Notez que la commande que j'ai utilisée là ajoute --only bbb
. La commande échoue de la même manière avec ou sans cela.
Notez également que mon firebase.json
ne répertorie PAS du tout "site"
. Voir ci-dessous:
.firebaserc :
{
"projects": {
"default": "blah-dev",
"dev": "blah-dev",
"prod": "blah-io"
},
"targets": {
"blah-io": {
"hosting": {
"aaa": [
"blah-aaa"
],
"boilerplate": [
"blah-boilerplate"
],
"bbb": [
"blah-bingo"
]
}
},
"blah-dev": {
"hosting": {
"aaa": [
"blah-aaa-dev"
],
"boilerplate": [
"blah-boilerplate-dev"
],
"bbb": [
"blah-bbb-dev"
]
}
}
}
}
firebase.json
{
"firestore": {...},
"database": {...},
"functions": {...},
"hosting": [
{
"target": "aaa",
"public": "packages/aaa/build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
},
{
"target": "boilerplate",
"public": "packages/boilerplate/build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
},
{
"target": "bbb",
"public": "packages/bbb/build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
}
],
"emulators": {...}
}
firebase-tools : . npx firebase-tools --version
-> 8.14.0
Plateforme : OSX, mais aussi image par défaut de GitHub Actions
Voir au dessus.
Voir au dessus. Exécutez la commande host:channel :deploy
Il déploie
{
"status": "error",
"error": "Hosting configs should only include either \"site\" or \"target\", not both."
}
(Le drapeau --debug
ajoute beaucoup de bruit de journalisation HTTP à l'avant, mais ce n'est que des 200.)
Merci pour le rapport. J'ai un correctif et je le sortirai dès que possible.
J'obtiens cette erreur lorsque je n'utilise pas le canal mais que le déploiement de firebase --only host :
firebase deploy --only hosting:$CI_COMMIT_REF_SLUG -m "Tag $TAG Pipeline $CI_PIPELINE_ID, build $CI_BUILD_ID" --non-interactive
@ Mistic92, veuillez ouvrir un nouveau numéro avec plus de détails et d'étapes de reproduction.
Commentaire le plus utile
Merci pour le rapport. J'ai un correctif et je le sortirai dès que possible.