Fa'afefea ona fai se saite fa'amau i Cloudflare Workers Sites

Talofa! O loʻu igoa o Dima, o aʻu o se taʻitaʻi faʻapitoa mo le SysOps team i Wrike. I totonu o lenei tusiga o le a ou taʻuina atu ia te oe le auala e fai ai se upega tafaʻilagi e latalata i le tagata faʻaoga pe a mafai i 10 minute ma 5 tala i le masina ma faʻautometi lona faʻaogaina. O le tusiga e toetoe lava a leai se mea e fai i faʻafitauli matou te foia i totonu o la matou 'au. O lo'u lava aafiaga patino ma lagona o le iloaina o se tekinolosi e fou ia te au. Na ou taumafai e faʻamatala laasaga i le tele o faʻamatalaga e mafai ai ina ia aoga faʻatonuga mo tagata e eseese le poto masani. Ou te faamoemoe o le a e fiafia. Alu!

Fa'afefea ona fai se saite fa'amau i Cloudflare Workers Sites

O lea la, masalo ua uma ona e mauaina se auala faigofie ma taugofie e faʻafeiloaʻi ai se upega tafaʻilagi. Atonu e leai se totogi, e pei ona faamatalaina i lenei tala lelei.

Ae faʻafuaseʻi lava e te le fiafia ma e te manaʻo e paʻi atu i le lalolagi fou fou o tekinolosi? Fa'apea o lo'o e mafaufau e uiga i le fa'autometi o le fa'agaioiga ma e te mana'o e fa'atelevave lau 'upega tafa'ilagi i le tele e mafai ai? I lenei tusiga o le a matou faʻaaogaina Hugo, ae o le filifiliga lea.

Matou te faʻaaogaina Gitlab CI / CD mo masini, ae faʻafefea le faʻavavevave? Sei o tatou fa'apipi'i sa'o le saite ile Cloudflare fa'aoga Nofoaga Faigaluega.

Le mea e manaʻomia e amata ai:

Vaega 1: Faʻapipiʻi Hugo

Afai ua uma ona e faʻapipiʻi Hugo, pe afai e te manaʻo i se isi mea faʻapipiʻi nofoaga faʻapipiʻi (pe le faʻaaogaina se tasi), ona mafai lea ona e faaseeina le vaega lea.

  1. Sii mai Hugo mai https://github.com/gohugoio/hugo/releases

  2. Matou te tuʻuina le faila faila Hugo e tusa ai ma se tasi o faʻamatalaga i totonu PATH auala

  3. Fausia se saite fou: hugo new site blog.example.com

  4. Suia le lisi o loʻo i ai nei i le mea fou na faia: cd blog.example.com

  5. Filifili se autu mamanu (https://github.com/budparr/gohugo-theme-ananke/releases po'o le a lava)

  6. Sei o tatou fatuina le pou muamua: hugo new posts/my-amazing-post.md

  7. Fa'aopoopo mea i le faila na faia: anotusi/posts/my-amazing-post.md.
    A maeʻa mea uma, sui le tau faʻataʻitaʻiga i sese

  8. Fa'atupu faila fa'aletonu: hugo -D

O lea la o lo'o iai la matou 'upega tafa'ilagi i totonu o se lisi ./lautele ma sauni mo lau fa'apipi'i muamua tusi lesona.

Vaega 2: Faʻatulagaina Cloudflare

Seʻi o tatou vaʻai i le seti muamua o Cloudflare. Se'i fa'apea ua uma ona i ai sau vaega mo le saite. Seʻi o tatou fai ma faaaʻoaʻoga blog.example.com.

Laasaga 1: Fausia se faʻamatalaga DNS

Muamua, filifili la matou vaega, ona sosoo ai lea ma le mea autu DNS. Matou te fatuina se blog A-faamaumauga ma faʻaalia nisi IP faʻamaonia mo ia (o le ofisa aloaia lea fautuaga, ae semanu e sili atu ona lalelei teisi).

Fa'afefea ona fai se saite fa'amau i Cloudflare Workers Sites

Laasaga 2: Cloudflare Token

  1. loʻu talaaga otooto -> API fa'ailoga laupepa-> Fausia Togi -> Fausia Fa'ailoga Fa'apitoa

Fa'afefea ona fai se saite fa'amau i Cloudflare Workers Sites

O iinei e te manaʻomia ai le faʻatapulaʻaina o faʻailoga i tala ma sone, ae tuʻu le Faʻatonu filifiliga mo faʻatagaga o loʻo lisiina i le ata.

Faasaoina le faailoga mo le lumanaʻi, matou te manaʻomia i le vaega lona tolu.

Laasaga 3: Maua accountid ma zoneid

Domain lagona → [itu taumatau]

Fa'afefea ona fai se saite fa'amau i Cloudflare Workers SitesO a'u ia, aua le fa'aogaina fa'amolemole :)

Faasaoina i latou i tafatafa o le faailoga, o le a tatou manaomia foi i latou i le vaega lona tolu.

Laasaga 4: Fa'agaoioi Tagata Faigaluega

Domain Tagata faigaluega Pulea Tagata Faigaluega

Matou te filifilia se igoa tulaga ese ma le tau o Tagata faigaluega → Unlimited ($5 i le masina i aso nei). Afai e te manaʻo ai, e mafai ona e faʻaleleia mulimuli ane i le free version.

Vaega 3: Fa'ato'aga muamua (fa'ata'ita'i lima)

Na ou faia le faʻapipiʻiina muamua o le tusi lesona e suʻe ai le mea o loʻo tupu iina. E ui o nei mea uma e mafai ona faigofie:

  1. Fa'apipi'i le wrangler: npm i @cloudflare/wrangler -g

  2. Tatou alu i le lisi o la tatou blog: cd blog.example.com

  3. Fa'alauiloa wrangler: wrangler init — site hugo-worker

  4. Fausia se config mo wrangler (ulufale le faailoga pe a fesiligia): wrangler config

Sei o tatou taumafai e fai suiga i le faila fou na faia wrangler.toml (iinei lisi atoa o tulaga e mafai ai):

  1. Fa'ailoa mai accountid ma zoneid

  2. Suiga auala i se mea e pei o *blog.example.com/*

  3. Fa'ailoa mai sese mo tagata faigaluegadev

  4. Suia pakete ile ./public (po'o le mea o lo'o i ai lau 'upega tafa'ilagi)

  5. Afai e sili atu ma le tasi lau vaega i le ala, e tatau ona e faʻasaʻo le ala i le tusitusiga galue: tagata faigaluega-site/index.js (vaai galuega handleEvent)

Lelei, ua oʻo i le taimi e faʻapipiʻi ai le saite e faʻaaoga ai le 'au wrangler publish.

Vaega 4: Fa'atonuina o masini

O lenei taʻiala ua tusia mo Gitlab, ae e puʻeina le aano ma le faigofie o le faʻaogaina otometi i le lautele.

Laasaga 1: Fausia ma faʻapipiʻi la matou poloketi

  1. Fausia se poloketi GitLab fou ma faʻapipiʻi le saite: directory blog.example.com fa'atasi ai ma mea uma e tatau ona tu'u i totonu o le lisi autu o le poloketi

  2. Sa matou seti fesuia'i CFAPITOKEN iinei: tulaga CI / CDVariata

Laasaga 2: Fausia se faila .gitlab-ci.yml ma faʻatautaia le faʻapipiʻi muamua

Fausia se faila .gitlab-ci.yml i le a'a ma mea nei:

stages:
  - build
  - deploy

build:
  image: monachus/hugo
  stage: build
  variables:
    GIT_SUBMODULE_STRATEGY: recursive
  script:
    - cd blog.example.com/
    - hugo
  artifacts:
    paths:
      - blog.example.com/public
  only:
    - master # this job will affect only the 'master' branch
  tags:
    - gitlab-org-docker #


deploy:
  image: timbru31/ruby-node:2.3
  stage: deploy
  script:
    - wget https://github.com/cloudflare/wrangler/releases/download/v1.8.4/wrangler-v1.8.4-x86_64-unknown-linux-musl.tar.gz
    - tar xvzf wrangler-v1.8.4-x86_64-unknown-linux-musl.tar.gz
    - cd blog.example.com/
    - ../dist/wrangler publish
  artifacts:
    paths:
      - blog.example.com/public
  only:
    - master # this job will affect only the 'master' branch
  tags:
    - gitlab-org-docker #

Matou te faʻalauiloaina le faʻaogaina muamua ma le lima (CI/CD Pipelines Fa'agaioia Paipa) po o le tuuto atu i le paranesi matai. Voila!

iʻuga

Ia, atonu sa ou ta'u faatauvaaina, ma o le faagasologa atoa e na o le sefulu minute na alu ai. Ae o lea ua i ai sau saite vave ma le faʻapipiʻiina otometi ma nisi manatu fou e uiga i se isi mea e mafai ona e faia ma le Aufaigaluega.

 Cloudflare Workers    Hugo    GitLab Ci

puna: www.habr.com

Faaopoopo i ai se faamatalaga