Mar a chleachdas tu HashiCorp Waypoint gus co-obrachadh le GitLab CI/CD

Mar a chleachdas tu HashiCorp Waypoint gus co-obrachadh le GitLab CI/CD

Sheall HashiCorp pròiseact ùr Slighe-slighe air HashiCorp didseatach. Bidh e a’ cleachdadh faidhle stèidhichte air HCL gus cunntas a thoirt air togail, lìbhrigeadh, agus sgaoileadh thagraidhean airson grunn àrd-ùrlaran sgòthan, bho Kubernetes gu AWS gu Google Cloud Run. Faodaidh tu smaoineachadh air Waypoint mar Terraform agus Vagrant còmhla gus cunntas a thoirt air a’ phròiseas togail, luingearachd agus leigeil ma sgaoil do thagraidhean.

Fìor gu cruth, tha HashiCorp air Waypoint a leigeil ma sgaoil mar stòr fosgailte agus a ’tighinn le mòran eisimpleirean. Tha an còmhdach orcastra an urra riut fhèin, tha Waypoint a’ tighinn mar dhòigh-obrach as urrainn dhut a ruith gu dìreach air do laptop no bhon inneal orcastra CI / CD as fheàrr leat. Tha an targaid airson na tagraidhean agad a chleachdadh cuideachd an urra riut fhèin, leis gu bheil Waypoint a’ toirt taic do Kubernetes, Docker, Google Cloud Run, AWS ECS, agus barrachd.

Às deidh an leughadh sgoinneil sgrìobhainnean agus an fheadhainn as sòghaile eisimpleirean tagraidhean air an toirt seachad le HashiCorp, chuir sinn romhainn sùil nas mionaidiche a thoirt air orchestration Waypoint a’ cleachdadh GitLab CI / CD. Gus seo a dhèanamh, gabhaidh sinn tagradh Node.js sìmplidh a’ ruith air AWS ECS bhon stòr eisimpleirean.

Às deidh dhuinn an stòr a ghleusadh, leig dhuinn sùil a thoirt air structar an tagraidh a’ taisbeanadh aon duilleag:

Mar a chleachdas tu HashiCorp Waypoint gus co-obrachadh le GitLab CI/CD

Mar is dòcha gu bheil thu air mothachadh, chan eil Dockerfile aig a’ phròiseact seo. Chan eil iad air an cur ris san eisimpleir, oir ann am prionnsapal chan eil feum againn orra, oir bheir Waypoint aire dhaibh dhuinn. Bheir sinn sùil nas mionaidiche air an fhaidhle waypoint.hcla thuigsinn ciod a ni e :

project = "example-nodejs"

app "example-nodejs" {
  labels = {
    "service" = "example-nodejs",
    "env" = "dev"
  }

  build {
    use "pack" {}
    registry {
    use "aws-ecr" {
        region = "us-east-1"
        repository = "waypoint-gitlab"
        tag = "latest"
    }
    }
  }

  deploy {
    use "aws-ecs" {
    region = "us-east-1"
    memory = "512"
    }
  }
}

Rè an ìre togail, bidh Waypoint a’ cleachdadh Cloud Native Buildpacks (CNB) gus cànan prògramadh a’ phròiseict a dhearbhadh agus ìomhaigh Docker a chruthachadh gun a bhith a’ cleachdadh Dockerfile. Ann am prionnsapal, is e seo an aon theicneòlas a bhios GitLab a’ cleachdadh gu ìre Auto DevOps aig ìre Auto Build. Tha e math fhaicinn gu bheil CNB CNCF a’ faighinn barrachd uchd-mhacachd am measg luchd-cleachdaidh a’ ghnìomhachais.

Aon uair ‘s gu bheil an ìomhaigh air a thogail, luchdaichidh Waypoint suas e gu fèin-ghluasadach chun chlàr AWS ECR againn gus am bi e deiseil airson a lìbhrigeadh. Aon uair ‘s gu bheil an togail deiseil, bidh an ceum lìbhrigidh a’ cleachdadh Add-on AWS ECS gus an tagradh againn a chuir chun chunntas AWS againn.

Bhon laptop agam - tha a h-uile dad sìmplidh. Chuir mi Waypoint a tha air a dhearbhadh mar-thà a-steach don chunntas AWS agam agus tha e “dìreach ag obair”. Ach dè thachras ma tha mi airson a dhol seachad air an laptop agam? No a bheil mi gu h-obann airson an cleachdadh seo a dhèanamh fèin-ghluasadach mar phàirt den loidhne-phìoban CI / CD iomlan agam, far a bheil na deuchainnean amalachaidh leantainneach agam, deuchainnean tèarainteachd, agus feadhainn eile gan ruith? Seo am pàirt den sgeulachd far a bheil GitLab CI/CD a’ tighinn a-steach!

NB Ma tha thu dìreach an dùil CI / CD a chuir an gnìomh no ma tha thu airson tòiseachadh air na cleachdaidhean as fheàrr a chuir an sàs airson togail pìoban, thoir aire do chùrsa ùr Slurm “CI/CD a’ cleachdadh Gitlab CI mar eisimpleir”. Tha e a-nis ri fhaighinn aig prìs ro-òrdugh.

Waypoint ann an GitLab CI/CD

Gus seo uile a chuir air dòigh ann an GitLab CI / CD, leig dhuinn sùil a thoirt air na tha a dhìth oirnn san fhaidhle againn .gitlab-ci.yml:

  • An toiseach, feumaidh tu ìomhaigh bunaiteach airson a ruith a-staigh. Bidh Waypoint ag obair air cuairteachadh Linux sam bith, chan fheum e ach Docker, gus an urrainn dhuinn ruith le ìomhaigh Docker coitcheann.
  • An uairsin feumaidh tu Waypoint a stàladh san ìomhaigh seo. Anns an àm ri teachd is dòcha gun cruinnich sinn togail ìomhaigh meta agus cuir a-steach am pròiseas seo dhut fhèin.
  • Mu dheireadh ruithidh sinn na h-òrdughan Waypoint

Tha na tha gu h-àrd a’ mìneachadh a h-uile dad a dh’ fheumas ar loidhne-phìoban gus na sgriobtaichean a ruith a dh’ fheumar gus an cleachdadh a chrìochnachadh, ach airson an cleachdadh gu AWS bidh feum againn air aon rud eile: feumaidh sinn a bhith air ar logadh a-steach don chunntas AWS againn. Anns an tuairisgeul Waypoint tha planaichean ann mu dheidhinn dearbhadh agus ùghdarras. Sgaoil HashiCorp cuideachd pròiseact drùidhteach an t-seachdain seo Crìochan. Ach airson a-nis, is urrainn dhuinn dìreach dearbhadh agus ùghdarras a làimhseachadh sinn fhìn.

Tha grunn roghainnean ann airson dearbhadh GitLab CICD ann an AWS. Is e a 'chiad roghainn a bhith a' cleachdadh an in-ghabhail Cruth-clò HashiCorp. Tha seo sgoinneil ma tha an sgioba agad mu thràth a’ cleachdadh Vault airson riaghladh teisteanais. Is e roghainn eile a dh’ obraicheas ma tha an sgioba agad a’ riaghladh cead a’ cleachdadh AWS IAM dèanamh cinnteach gu bheil gnìomhan lìbhrigidh air am piobrachadh troimhe Runner GitLab, le ùghdarras an cleachdadh a ruith tro IAM. Ach ma tha thu dìreach airson eòlas fhaighinn air Waypoint agus gu bheil thu airson a dhèanamh gu sgiobalta, tha aon roghainn mu dheireadh ann - cuir na h-iuchraichean AWS API agus Secret agad gu Caochladairean àrainneachd GitLab CI/CD AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY.

A 'cur a h-uile càil còmhla

Cho luath ‘s a thuigeas sinn dearbhadh, is urrainn dhuinn tòiseachadh! Ar cuairt dheireannach .gitlab-ci.yml coltas mar seo:

waypoint:
  image: docker:latest
  stage: build
  services:
    - docker:dind
  # Define environment variables, e.g. `WAYPOINT_VERSION: '0.1.1'`
  variables:
    WAYPOINT_VERSION: ''
    WAYPOINT_SERVER_ADDR: ''
    WAYPOINT_SERVER_TOKEN: ''
    WAYPOINT_SERVER_TLS: '1'
    WAYPOINT_SERVER_TLS_SKIP_VERIFY: '1'
  script:
    - wget -q -O /tmp/waypoint.zip https://releases.hashicorp.com/waypoint/${WAYPOINT_VERSION}/waypoint_${WAYPOINT_VERSION}_linux_amd64.zip
    - unzip -d /usr/local/bin /tmp/waypoint.zip
    - rm -rf /tmp/waypoint*
    - waypoint init
    - waypoint build
    - waypoint deploy
    - waypoint release

Chì thu gu bheil sinn a’ tòiseachadh le ìomhaigh docker:latest agus shuidhich grunn chaochladairean àrainneachd a dh’ fheumas Waypoint. Ann an caibideil script bidh sinn a’ luchdachadh sìos an dreach as ùire den Waypoint so-ghnìomhaichte agus ga chuir a-steach /usr/local/bin. Leis gu bheil an ruitheadair againn ùghdarraichte mu thràth ann an AWS, an ath rud bidh sinn dìreach a’ ruith waypoint init, build, deploy и release.

Seallaidh toradh na h-obrach togail dhuinn an t-àite crìochnachaidh far an do chuir sinn a-steach an tagradh:

Mar a chleachdas tu HashiCorp Waypoint gus co-obrachadh le GitLab CI/CD

Waypoint aon de grunn fhuasglaidhean HashiCorp, obraich gu math le GitLab. Mar eisimpleir, a bharrachd air a bhith a’ lìbhrigeadh an tagraidh, is urrainn dhuinn am bun-structar a chuir air dòigh a’ cleachdadh Terraform air GitLab. Gus tèarainteachd SDLC a cho-òrdanachadh, is urrainn dhuinn cuideachd a bhuileachadh GitLab le Vault airson a bhith a’ riaghladh dìomhaireachdan is comharran ann am pìoban CI/CD, a’ toirt seachad fuasgladh coileanta do luchd-leasachaidh agus luchd-rianachd a tha an urra ri riaghladh dìomhaireachdan airson leasachadh, deuchainn, agus cleachdadh cinneasachaidh.

Bidh na co-fhuasglaidhean air an leasachadh le HashiCorp agus GitLab a’ cuideachadh chompanaidhean gus dòigh nas fheàrr a lorg air tagraidhean a leasachadh le bhith a’ toirt seachad riaghladh cunbhalach air pìoban lìbhrigidh agus bun-structair. Tha Waypoint air ceum eile a ghabhail anns an t-slighe cheart agus tha sinn a’ coimhead air adhart ri leasachadh leantainneach a’ phròiseict. Gheibh thu barrachd a-mach mu Waypoint an seo, cuideachd is fhiach sgrùdadh a dhèanamh sgrìobhainnean и plana leasachaidh pròiseict. Chuir sinn ris an eòlas a fhuair sinn Sgrìobhainnean GitLab CICD. Ma tha thu airson a h-uile dad fheuchainn leat fhèin, faodaidh tu eisimpleir obrach iomlan a thoirt a-steach an tasgaidh seo.

Is urrainn dhut prionnsapalan CI / CD a thuigsinn, maighstireachd a dhèanamh air a h-uile iom-fhillteachd a bhith ag obair le Gitlab CI agus tòiseachadh air na cleachdaidhean as fheàrr a chuir an sàs le bhith a’ dèanamh cùrsa bhidio “CI/CD a’ cleachdadh Gitlab CI mar eisimpleir”. Thig còmhla rinn!

Source: www.habr.com

Cuir beachd ann