私は github アクションの初心者です。 githubアクションを通じてlaravelアプリをサーバーにプッシュしようとしていました。以下は、私のdeploy.ymlファイルからのスニペットです。
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 2
- name: Create env file
run: |
touch .env
echo APP_DEBUG=false >> .env
echo DB_USERNAME=test_username >> .env
echo DB_PASSWORD=${{ secrets.DEV_PASSWORD }} >> .env
- name: List of files
run: ls -a
- name: FTP-Deploy-Action
uses: SamKirkland/[email protected]
with:
ftp-server: ${{ secrets.DEV_FTP_SERVER }}
ftp-username: ${{ secrets.DEV_FTP_USERNAME }}
ftp-password: ${{ secrets.DEV_FTP_PASSWORD }}
Github ワークフローのコンソール上
List output files 0s
Run ls -a
.
..
.env // created through "Create env file job"
.git
.github // from github repo
README.md // from github repo
index.php // from github repo
...
FTP-Deploy-Action の実行開始時
.env は FTP サーバーにアップロードされません。
SpicyPizza/create-envfile このアクション パッケージを使用して .env ファイルを作成して .env ファイルを作成してみました。
アクションコンソールで見つけました
##[warning]Unexpected input(s) 'INPUT_ENVKEY_APP_DEBUG', 'INPUT_ENVKEY_SOME_KEY', 'INPUT_ENVKEY_SECRET_KEY', valid inputs are ['entryPoint', 'args', 'file_name']
.env ファイルを作成しても仕方ありませんでした。
touch コマンドで .env を作成しようとした後、ftp サーバーにアップロードできないことがわかりました。
新しく作成した .env ファイルを FTP 経由でアップロードするにはどうすればよいですか?
------------------------
SamKirkland/FTP-Deploy-Action は、git ftp を使用してファイルをアップロードします。したがって、追跡されていないファイルを .git-ftp-include
に追加する必要があります。
リソースごと
.git-ftp-include ファイルは、アップロードする必要がある意図的に追跡されていないファイルを指定します。
これは実行例です
name: FTP Test root upload
on:
push:
jobs:
ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Create env file
run: |
touch .env
echo APP_DEBUG=false >> .env
echo DB_USERNAME=test_username >> .env
echo DB_PASSWORD=${{ secrets.DEV_PASSWORD }} >> .env
echo "!.env" > .git-ftp-include # Add git untracked file
- name: FTP-Deploy-Action
uses: SamKirkland/[email protected]
with:
ftp-server: ${{ secrets.DEV_FTP_SERVER }}
ftp-username: ${{ secrets.DEV_FTP_USERNAME }}
ftp-password: ${{ secrets.DEV_FTP_PASSWORD }}
!.env を追加していることに注意してください。
!基本的には、git ftp に常にこのファイルをアップロードするように指示しています。これがないと機能しません
これは、アップロードを示すサンプル ログです。ログに .env が含まれていることを確認してください。
Thu Sep 3 20:47:18 UTC 2020: Including .env for upload.
Thu Sep 3 20:47:18 UTC 2020: Having files to sync.
Thu Sep 3 20:47:18 UTC 2020: 9 files to sync:
Thu Sep 3 20:47:18 UTC 2020: [1 of 9] Buffered for upload '.env'.