作業効率化

2021年11月28日

GitLabのPipelinesでXserverへの自動デプロイ

GitLabのPipelinesでXserverへの自動デプロイ

作業効率化のためのメモです。
前回の記事のGitLab版です。
ここではGitLab.comでの解説です。
セルフホスティングで自社サーバーにGitLabをインストールした場合はバージョンによります。

自動デプロイまでの手順

    1. GitLab.comの管理画面にログイン
    2. あらかじめプロジェクトとリポジトリを作成、リポジトリのページを開きます。
    3. Gitlabの場合、最初から「.gitlab-ci.yml」が作成されていますので、これを編集します。
    4. 下記の内容を元からある設定に「追記」します。(※上書きではありません)

.gitlab-ci.yml

image: ubuntu:18.04

deploy:
  script:
    - apt-get update -qq && apt-get install -y -qq lftp
    - lftp -c "set ftp:ssl-allow no; open -u $FTP_USERNAME,$FTP_PASSWORD $FTP_HOST; mirror -R $FTP_LOCAL $FTP_SERVER --parallel=10"
  only:
    - main

環境変数の登録

  1. 左メニューにある「Settings」>「CI/CD」をクリックして、CI/CD Settingsのページを開きます。
  2. 「Variables」の「Expand」ボタンをクリックします。
  3. 環境変数に以下の値を登録しておきます。(全部ProtectedでOK)
環境変数意味入力例
FTP_USERNAMEFTPユーザー名xsample
FTP_PASSWORDFTPパスワード ********
FTP_HOSTFTPホスト名sv***.xserver.jp
FTP_LOCALローカルフォルダ./
FTP_SERVERデプロイ先のディレクトリ/example.com/public_html/deploy-xxxxxx

※ディレクトリの部分は契約アカウントによってドメイン部分が変わります。例では「deploy-xxxxxx」はデプロイ先にする場合です。

自動デプロイ時の手順および確認方法

  1. Gitリポジトリにプッシュすると、Pipelineから自動デプロイが作動します。
  2. 左メニューにある「CI/CD」をクリックして、「Pipelines」でデプロイ状況が確認できます。

    今回の記事は以上です。

     

    LINEで送る
    Pocket

    label

    Written by
    isaka

    バックエンドエンジニア

    CONTACT

    お問い合わせ、ご依頼などは下記電話番号かメールアドレスまでご連絡ください。
    ※内容により回答までお時間をいただく場合がございます、予めご了承ください。

    tel. 06-6534-9333

    10:00-19:00(※土日祝を除く)