Giter Club home page Giter Club logo

pgr301-exam's Introduction

DevOps med gode intensjoner

CI pipeline Publish docker image to ECR Terraform CloudWatch

Del 1 - DevOps prinsipper

Hva er utfordringene med dagens systemutviklingsprosess - og hvordan vil innføring av DevOps kunne være med på å løse disse? Hvilke DevOps prinsipper blir brutt?

Noen av utfordringene med dagens systemutviklingsprosess er kompleksitet. Jo større og mer komplekse systemer blir, jo vanskeligere og dyrere blir det å håndtere dem. Dette kan løses med devops ved å dele ting inn i mindre deler, f.eks microservices. DevOps prinsipper som blir brutt er blant annet samarbeid, CI, automasjon.

En vanlig respons på mange feil under release av ny funksjonalitet er å gjøre det mindre hyppig, og samtidig forsøke å legge på mer kontroll og QA. Hva er problemet med dette ut ifra et DevOps perspektiv, og hva kan være en bedre tilnærming?

Problemet med dette når det kommer til DevOps er at det kan redusere utviklingsprosessen. Ved å publisere ny funksjonalitet sjeldnere kan det gjøre det vanskelig for bedrifter å reagere raskt nok på endringer fra kunder eller hvordan markedet fungerer.

Teamet overleverer kode til en annen avdeling som har ansvar for drift - hva er utfordringen med dette ut ifra et DevOps perspektiv, og hvilke gevinster kan man få ved at team han ansvar for både drift- og utvikling?

Problemet med å ha en avdeling hver for drift og utvikling kan være at det blir mye frem og tilbake mellom avdelingene og at det oppstår misforståelser. En annen ting er at de utviklingsteamet kanskje ikke har oversikt over hva som kreves for å kjøre softwaren. Fordelene med å ha et team som håndterer begge er bedre samarbeid og kommunikasjon. De kan også endre ting raskere om det er noe som trengs, siden de kjenner til begge sidene ved utvikling og drift.

Å release kode ofte kan også by på utfordringer. Beskriv hvilke- og hvordan vi kan bruke DevOps prinsipper til å redusere eller fjerne risiko ved hyppige leveranser.

Del 2 - CI

Oppgave 3

For å legge til branch protection må sensor gå inn på settings i repositoryet, gå til "Code and automation" i sidebaren og velge "Branches" (for å få opp branches alternativet må man ha mer enn en branch). Ved siden av Branch protection rules er det en knapp med "Add rules" hvor man skriver inn navnet navnet på branchen man vil legge til restriskjoner på.

For å konfigurere at ingen kan pushe direkte til main branch velger man alternativene

  • Require pull request before merging
    • Require approvals (velg minst 1 eller mer)
  • Require status checks before merging
    • Require branches to be up to date before merging

Del 3 - Docker

Oppgave 1

For å få workflowen til å kjøre med DockerHub konto må man legge inn brukernavn og token til DockerHub i repository secrets. Workflowen feiler fordi den ikke får logget inn i DockerHub.

Oppgave 3

For at sensor skal få sin fork til å kjøre må sensor legge inn ECR secret keys i repositoryet og bytte ut kandidat id i amazon linken (244530008913.dkr.ecr.eu-west-1.amazonaws.com/1005:$rev)

pgr301-exam's People

Contributors

jennyhsl avatar glennbech avatar

Watchers

 avatar

Forkers

glennbech

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.