La guardia Dockerfile diventa bloccante, e le ARG seguono la regola vera #14
Notifications
Total Time Spent: 1 hour 30 minutes
LucaZanni
1 hour 30 minutes
No due date set.
Dependencies
No dependencies set.
Reference: devops/shared-actions#14
Reference in New Issue
Block a user
Due modifiche alla guardia introdotta con le #9-#13, ora che la tappa 2 di
PZeta_Touch/flux-repo#133è chiusa.1. Bloccante
Nasceva come solo avviso perché 56 repository avevano ancora uno dei due difetti: bloccare allora li avrebbe fatti diventare rossi tutti insieme. Oggi sono corretti. Scansione dell'intero portale con la regola stretta: 238 Dockerfile, 2 difettosi —
frontend/vue-conservazioneetelegram/telegram-media-bot, che non sono repository git e quindi non passano di qui.Quindi lo step perde
continue-on-error, i messaggi diventano::errore il job si ferma. Il motivo per cui vale la pena fermarlo qui: senza, il difetto si manifesta solo al tag, dentro il log di una release che nessuno guarda — è andata così per due mesi connode-xmlvalidation(PZeta_Touch/flux-repo#129).2. Le ARG non si ereditano fra stage
La versione precedente presumeva che
FROM base AS depsvedesse leARGdichiarate inbase, come accade per leENV. La documentazione Docker dice il contrario: unaARGvale nello stage che la dichiara, e quelle globali vanno ridichiarate dentro lo stage per essere viste daiRUN.Con l'ipotesi vecchia la guardia lasciava passare proprio i casi come
nuxt-vue-components-docs, dove il pin di npm dichiarato inbaseveniva usato indepse lì arrivava vuoto:npm install -g npm@installava l'ultima versione, cioè oggi npm 12, che è quella che rifiuta il registry scritto diverso. Il difetto che la guardia esiste per intercettare.Prove
GITHUB_WORKSPACE=D:\Progetti\portale): segnala i 2 file noti e nient'altro.vue-hr-valutazioni): «in regola», uscita 0.ARGdichiarata inbase, usata indepse ridichiarata inprod: segnala solodeps, riga 7, uscita 1.bash -nsu entrambe le varianti dello step (Gitea e GitHub).Una nota per chi la modificherà: dentro il programma
awk, che è racchiuso fra apici singoli, nessun commento può contenere un apostrofo — chiude la stringa e rompe lo script. È successo scrivendo questa modifica, e l'ha intercettatobash -n.Il tag
v1viene spostato solo con questo commit, non prima: lo condividono 74 repository backend più i frontend.