Yaml tiedostot
Yamlit ovat konfiguraatiotiedostoja, joissa kerrotaan tarkemmat ohjeet BuildConfigista, Buildista, Podista, Servicestä, Routesta jne. Niitä muokkaamalla pystyy muuttamaan konttien toimintaa. Jos teet muutoksia BuildConfigiin, kaikki sen perivät olioit käynnistävät itseensä littyvät kontit uudestaan jotta muutos näkyisi. Yamleista yleisesti
Yamlit sisältävät myös paljon automaattisesti generoituja rivejä, joten tällä sivulla niistä kerrotaan tärkeimpiä asioita. Osa tiedoista löytyy myös helpommin luettavassa muodossa kunkin olion omalla sivulla, osa vaatii scrollauksen.
- Podin oma sivu esim: Dev → Topology → Haluttu deployment → 'Pods' listasta oikea podi
Yamlien löytäminen web konsolilla
Administrator näkymäPod: Workloads → Pods → Haluttu pod → Yaml
Build: Builds → Builds → Haluttu build → Yaml
Service: Networking → Services → Haluttu Service → Yaml
Route: Networking → Routes → Haluttu Route → Yaml
Dev näkymä
Pod: Topology → Haluttu deployment → Valitse "Pods" listasta → Yaml
Build: Topology → Haluttu deployment → Valitse "Builds" listasta → Yaml
tai Builds → Haluttu BuildConfig → Builds → Haluttu build → Yaml
Service: Topology → Haluttu deployment → Valitse "Services" listasta → Yaml
Route: Topology → Haluttu deployment → Valitse "Routes" listasta → Yaml
Buildconfig
Seurattavan haaran muuttaminenNämä tiedot annettiin myös 3.3 Sovelluksen lisääminen OpenShiftin projektille ohjeessa.
annotations:
app.openshift.io/vcs-ref: main #metadata haaraa (ei vaikuta)
app.openshift.io/vcs-uri: 'https://version.helsinki.fi/projekti/Sovellus' #metadata url (ei vaikuta)
openshift.io/generated-by: OpenShiftWebConsole
[.....]
spec:
source:
type: Git
git:
uri: 'https://version.helsinki.fi/projekti/Sovellus' #git url
ref: main #git haara/tag
contextDir: /server #kertoo missä directoryssa kontin tiedostot ovat, määrittää myös root kansion kontille
sourceSecret:
name: gitlab-production-token #kertoo Administrator->Workloads->Secrets tiedoston nimen jossa salausavain sijaitsee, tarvitaan jos repo on salainen
Ympäristömuuttujat
Jos ympäristömuuttujat eivät ole salaisia, ne voidaan muuttaa/kirjata myös suoraan BuildConfig.yaml tiedostoon. Salaisille ympäristömuuttujille katso ohje
strategy:
type: Docker
dockerStrategy:
env:
- name: PORT #esimerkki portin asettamisesta
value: '3001'
- name: MUUTTUJAN NIMI #ei tarvitse hipsuja
value: MUUTTUJAN ARVO #ei tarvitse hipsuja
dockerfilePath: Dockerfile #reitti contextDir kohdasta (ylempi laatikko) DockerFileen,
#pelkkä Dockerfile jos DockerFile on contextDir juuressa
Triggerit
Kertoo mikä aiheuttaa uuden buildin ja sitä seuraavan uuden podin muodostuksen.
- type: Generic
generic:
secretReference:
name: api-generic-webhook-secret #secrettinä tässä tapauksessa automaattisesti luotu webhook
- type: ConfigChange
Logien määrät
Kts ohje: Openshift logit
SERVICE
Omia portinohjauksia ei tarvitse toteuttaa, Openshift välittää liikenteen podista toiseen kunhan portit on kirjattu oikein. Yleensä tämä myös vaatii sitä että port ja targetPort ovat sama numero.
ports:
- name: 3001-tcp #Servicen omalla sivulla nähtävä 'Service port mapping nimi'
protocol: TCP #Protokolla, ei kannata koskea
port: 3001 #Portti jota Service kuuntelee
targetPort: 3001 #Portti jonne Service ohjaa liikenteen
route
Routeen tehtävistä muutuksista on kerrottu wikissä sivulla 3.7 Miten julkaisen sovellukseni internetiin?
Suositeltu yhteydenottotapa kysymyksiin on:
https://helsinkifi.slack.com #kontit
Resurssien lisäys/muutospyynnöt kannattaa lähettää sähköpostilla.
grp- openshift -owner@helsinki.fi (alustan ylläpito ja kehitys)
tike-ohjelmistotuotanto@helsinki.fi (sovelluskehitys)