GNU/Linux >> Znalost Linux >  >> Ubuntu

Bare Metal Cloud Akce GitHubu

Úvod

GitHub Actions je platforma pro automatizaci pracovního postupu vývoje softwaru s vestavěným nástrojem CI/CD. Platforma se snadno používá a nevyžaduje aplikaci třetí strany ani předchozí odborné znalosti a specializovanou osobu pro údržbu.

Akce GitHubu PhoenixNAP Bare Metal Cloud slouží jako automatizovaný spouštěč úloh, který reaguje na události GitHubu ve vašem úložišti git. Bez spouštění dalšího serveru můžete požadované funkce CI/CD dosáhnout přímo z GitHubu.

Předpoklady

  • Účet GitHub
  • Účet Bare Metal Cloud (BMC) nebo phoenixNAP Client Portal (PNCP). Pokud jste nový klient, vytvořte si účet pro Bare Metal Cloud. Pomoc najdete ve videu s pokyny k vytvoření účtu BMC.

Co je BMC GitHub Action?

Akce Bare Metal Cloud GitHub je definována odpovídajícím action.yaml soubor. Každé úložiště akcí BMC má vyhrazený soubor action.yaml soubor s kódem vytvořeným pro danou konkrétní akci, například create-server-bmc .

Soubor yaml popisuje, jak akci spustit, definuje hlavní soubor JavaScriptu, v tomto případě index.js a metadata funkce. Tyto akce BMC založené na JavaScriptu můžete kombinovat a začlenit je do svých pracovních postupů, abyste dosáhli požadované úrovně automatizace.

Přihlašovací údaje BMC GitHub

Úložiště GitHub podporuje plně šifrované tajné proměnné prostředí. Poté odkazujete na clientid a clientsecret v souboru yaml pracovního postupu. Akce BMC získají přístup k vašemu tajemství pouze tehdy, když je přidáte do svého úložiště.

Jakmile do svého úložiště nebo organizace přidáte přihlašovací údaje, hodnoty se při spuštění akce nezobrazí.

Chcete-li získat BMC Client ID a Client Secret , přihlaste se na portál Bare Metal Cloud a:

1. Přejděte na Přihlašovací údaje rozhraní API stránku.

2. Klikněte na Vytvořit přihlašovací údaje tlačítko.

3. Přidejte jméno pověření a volitelný popis v příslušných polích.

4. Přiřaďte rozsahy oprávnění . Zaškrtněte políčko vedle úrovně oprávnění, kterou chcete udělit přihlašovacím údajům. Vyberte, zda chcete povolit použití všech volání BMC API nebo jen pro čtení.

5. Klikněte na Vytvořit až budete připraveni.

6. Získáte Client ID a Client Secret v potvrzovacím okně.

7. Zkopírujte přihlašovací údaje a přidejte je do svého úložiště GitHub jako tajné. Přejděte do Nastavení -> Tajemství a klikněte na Přidat nový tajný klíč .

PhoenixNAP BMC GitHub Actions Repository

Naše úložiště BMC GitHub Actions aktuálně obsahuje tři akce:

  • Vytvořte nový server Bare Metal Cloud
  • Smazat server Bare Metal Cloud
  • Získejte základní informace o serveru Bare Metal Cloud

Akce BMC můžete zkombinovat s jinými akcemi a vytvořit si vlastní úlohy a pracovní postupy.

Vytvořit novou akci BMC Server GitHub

create-server-bmc Akce GitHub vám umožňuje automatizovat proces vytváření serveru. Můžete vytvořit pracovní postup, který nainstaluje aplikace pro testování softwaru a když budete potřebovat více prostředků k automatickému spuštění nového serveru BMC.

Tato akce zobrazí nové ID serveru a veřejné IP adresy v seznamu s hodnotami oddělenými čárkami. Akce je synchronní. Proces vytváření a spouštění serveru je však asynchronní.

Požadované vstupy

Každá akce GitHubu má povinné prvky. Akce vytvoření serveru musí obsahovat:

  • clientid :ID klienta z přihlašovacích údajů OAuth2 aplikace.
  • clientsecret :Tajný klíč klienta z přihlašovacích údajů OAuth2 aplikace.
  • hostname :Název hostitele serveru. Název musí odpovídat tomuto vzoru:1 ≤ délka ≤ 100 shod ^(?=.*[a-zA-Z])([a-zA-Z0-9().-])+$

Volitelné vstupy

Volitelné vstupy pro create-server-bmc Akce GitHubu jsou:

  • image :ID OS serveru. Výchozí hodnota je ubuntu/bionic .
  • type :ID typu serveru. Výchozí hodnota je s1.c1.small .
  • location :ID umístění serveru. Nemůžete změnit umístění jakmile je server vytvořen. Toto pole můžete nastavit na PHX nebo ASH. Výchozí hodnota je PHX .
  • bmcentrypoint :Vstupní bod BMC API. Výchozí nastavení je https://api.phoenixnap.com/bmc/v1/ .
  • bmctokenhost :Hostitel tokenu BMC OIDC. Výchozí hodnota je https://auth.phoenixnap.com .
  • bmctokenpath :Cesta tokenu BMC OIDC. Výchozí hodnota je /auth/realms/BMC/protocol/openid-connect/token .

Výstupy

create-server-bmc akce má následující výstup:

  • id :Nové ID serveru BMC.
  • ipaddresses :Čárkami oddělený seznam veřejných IP adres připojených k novému serveru.

Příklad použití pro akci vytvoření serveru BMC

Níže je uveden příklad akce vytvoření serveru:

- name: CreateBMCServer step
  uses: phoenixnap-github-actions/create-server-bmc 
  id: createserver
  with:
    clientid: ${{secrets.BMC_CLIENT_ID}}
    clientsecret: ${{secrets.BMC_CLIENT_SECRET}}
    hostname: "bmc-gha-test"
    image: "ubuntu/bionic"
    location: "ASH"
    type: "s1.c1.small"
    description: "This server is created using GitHub Actions."

Získejte BMC Server Information GitHub Action

get-server-bmc action načte základní informace o serveru Bare Metal Cloud. Tato synchronní akce získá většinu podrobností poskytnutých během akce vytvoření serveru BMC.

Požadované vstupy

Požadované vstupy pro get-server-bmc akce jsou:

  • clientid :ID klienta z přihlašovacích údajů OAuth2 aplikace.
  • clientsecret :Tajný klíč klienta z přihlašovacích údajů OAuth2 aplikace.
  • serverid :ID serveru, pro který se mají získat informace. ID se vytvoří během kroku vytvoření serveru.

Volitelné vstupy

Toto jsou volitelné vstupy pro get-server-bmc Akce GitHubu:

  • bmcentrypoint :Vstupní bod BMC API. Výchozí nastavení je https://api.phoenixnap.com/bmc/v1/ .
  • bmctokenhost :Hostitel tokenu BMC OIDC. Výchozí hodnota je https://auth.phoenixnap.com .
  • bmctokenpath :Cesta tokenu BMC OIDC. Výchozí hodnota je /auth/realms/BMC/protocol/openid-connect/token .

Výstupy

create-server-bmc action poskytuje tento výstup:

  • id :ID serveru BMC.
  • status :Provozní stav serveru.
  • hostname :Název hostitele serveru.
  • ipaddresses :Čárkami oddělený seznam veřejných IP adres připojených k serveru.

Příklad použití pro akci vytvoření serveru BMC

Níže je uveden příklad použití akce vytvoření serveru:

- name: GetServer step
  uses: phoenixnap-github-actions/get-server-bmc  
  id: getserver
  with:
    clientid: ${{secrets.BMC_CLIENT_ID}}
    clientsecret: ${{secrets.BMC_CLIENT_SECRET}}
    serverid: ${{ steps.createserver.outputs.id }}

Odstranit akci BMC Server GitHub

delete-server-bmc Akce GitHub smaže server Bare Metal Cloud. Akce je synchronní, zatímco mazání a čištění jsou asynchronní.

Upozornění: Akci odstranění používejte s extrémní opatrností, protože ji nelze vrátit zpět a může vést ke ztrátě dat.

Požadované vstupy

Požadované vstupy pro delete-server-bmc akce jsou:

  • clientid :ID klienta z přihlašovacích údajů OAuth2 aplikace.
  • clientsecret :Tajný klíč klienta z přihlašovacích údajů OAuth2 aplikace.
  • serverid :ID serveru, který chcete odstranit. ID se vytvoří během kroku vytvoření serveru.

Volitelné vstupy

Toto jsou volitelné vstupy pro delete-server-bmc Akce GitHubu:

  • bmcentrypoint :Vstupní bod BMC API. Výchozí nastavení je https://api.phoenixnap.com/bmc/v1/ .
  • bmctokenhost :Hostitel tokenu BMC OIDC. Výchozí hodnota je https://auth.phoenixnap.com .
  • bmctokenpath :Cesta tokenu BMC OIDC. Výchozí hodnota je /auth/realms/BMC/protocol/openid-connect/token .

Výstupy

delete-server-bmc action poskytuje tento výstup:

  • id :ID smazaného serveru BMC.

Příklad použití pro akci odstranění BMC serveru

Níže je uveden příklad použití akce vytvoření serveru:

- name: DeleteServer step
  uses: phoenixnap-github-actions/delete-server-bmc 
  id: deleteserver
  with:
    clientid: ${{secrets.BMC_CLIENT_ID}}
    clientsecret: ${{secrets.BMC_CLIENT_SECRET}}
    serverid: ${{ steps.createserver.outputs.id }}

Ubuntu
  1. Nejčastější dotazy k mému účtu E2E

  2. Akce tlačítka napájení Lubuntu 18.10 Lxqt?

  3. Jak migrovat holou instalaci Linuxu na virtuální počítač

  1. Nastavte linuxový cloud na holém kovu

  2. Jak nainstalovat Kubernetes na Bare Metal Server

  3. Ubuntu ve virtuálním boxu v Dropboxu nebo cloudu?

  1. Co je Bare Metal Cloud

  2. Automatizované nasazení Spark Cluster na Bare Metal Cloud

  3. Jak nastavit VPN pro vzdálený přístup Bare Metal Cloud