github actionの環境変数について
github actionを使ってciをしているのですが、rpecの結果がローカルだとパスしてリモートだとエラーになります。
原因としては新しくメールの送信設定を追加して、envを用いてパスワードや送信元のアドレスを表示しているからだと思います。
config.action_mailer.smtp_settings = {
port: 587,
address: 'smtp.gmail.com',
domain: 'smtp.gmail.com',
user_name: ENV["GMAIL_ADDRESS"],
password: ENV["GMAIL_2FACTOR_PASSWORD"],
authentication: 'plain',
enable_starttls_auto: true
}
試したこととしては、$GITHUB_ENVに(name: value)として追加してみたのですが結果は変わらず。
name: Test Rspec
on:
pull_request:
branches: [ master ]
jobs:
run_spec:
name: Run Test
runs-on: ubuntu-latest
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
steps:
- uses: actions/checkout@v2
- name: Set up Ruby 2.6.5
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.6.5
- name: Test with Rspec
run: |
echo "ENV["GMAIL_ADDRESS"]=${{ secrets.GMAIL_ADDRESS }}" >> $GITHUB_ENV
echo "ENV["GMAIL_2FACTOR_PASSWORD"]=${{ secrets.GMAIL_2FACTOR_PASSWORD }}" >> $GITHUB_ENV
gem install bundler
bundle config set --local path vendor/bundle --jobs 4 --retry 3
bundle install --jobs 4 --retry 3
bundle exec rspec
- name: Slack Notification
uses: rtCamp/action-slack-notify@v2
env:
SLACK_CHANNEL: my-portfolio
SLACK_COLOR: ${{job.status}}
SLACK_USERNAME: ${{ github.actor }}
SLACK_TITLE: rspecが実行されました
SLACK_MESSAGE: 結果を確認してください
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
ワークフローのエラーとしては、こんな感じになっています。
多分このenvのところが原因なんじゃないかと思っているのですが、対処方がわかりません。
公式を見て、環境変数の使い方を見てみても求めているものじゃなかったので困っています、
すいませんが回答よろしくお願いします。
ArgumentError:
SMTP From address may not be blank: nil
# ./spec/models/post_product_spec.rb:37:in `block (2 levels) in <main>'
0 likes