Po përpiqem të zëvendësoj variablat env të përdorura nga AspnetCore duke i përcaktuar ato në skedarin .gitlab-ci.yml.
Skedari appsettings.json duket si ky:
"ConnectionStrings": {
"DatabaseConnection": "my-connection-string"
},
Këtu janë disa gjëra që kam provuar.
Yml e pavlefshme:
ConnectionStrings:
DatabaseConnection: "my-connection-string"
Yml e vlefshme (Nuk funksionon):
"ConnectionStrings:DatabaseConnection": "my-connection-string"
"ConnectionStrings::DatabaseConnection": "my-connection-string"
Për dy të fundit, ky gabim u shfaq dhe siç mund ta shihni, i gjithi është transformuar në një varg të gjatë në vend të çiftit të vlerave kryesore për variablin env:
/bin/bash: rreshti 87: eksportoni: `ConnectionStrings::DatabaseConnection=Server=mssql,1433;Baza e të dhënave=MyDatabase;User Id=SA;Fjalëkalimi=MyPassword;Trusted_Connection=False;MultipleActive'jo valide=ResidentifT
Unë jam duke përdorur linux runner për CI.
- call %FLYWAYPATH%\flyway.cmd migrate -user=%DBEVOUSER% -configFiles=%FLYCONF_INTEGRATION% -password=%FLYPASS_INT%
Ndryshorja FLYPASS_INT është fjalëkalimi i ruajtur në variabla sekrete, kështu që asnjë zhvillues nuk mund ta dijë kalimin edhe me një 'echo $variable'. Ashtu? Kjo komandë ka për qëllim të ekzekutojë migrimet db. Vini re se roli i zhvilluesit nuk mund të shohë variablin sekret, por ruajtësi i roleve dhe pronari mund të shohin variablat sekrete. 22.01.2020