Heroku - Laravel PHP развертывание из семафора - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть приложение на Heroku для моей GitHub dev ветки. Я использую Semaphore для своей непрерывной интеграции и развертывания.

Когда я нажимаю на свою ветку dev на Github, Semaphore начинает работать, и, если все пойдет хорошо, я могу развернуть наHeroku нажимайте «Продвигать» благодаря моему /.semaphore/heroku.yml файлу.

Прежде чем нажимать на повышение, у меня есть это в моем каталоге ~/public:

Каталог содержимого перед продвижением:

enter image description here

Обратите внимание на ссылку "хранение" на /app/storage/app/public.

В моем ~/storage/app/public/images/users, яесть много пользовательских аватаров:

Список аватаров пользователей в каталоге

enter image description here

Теперь я нажимаю наПродвижение в семафор. Все идет хорошо:

Семафор ОК

enter image description here

НО ... после промоушена вот чтоУ меня на Heroku ...

В ~/public моя ссылка на хранилище исчезла:

Ссылка на хранилище исчезла:

enter image description here

И в моем общедоступном хранилище, в ~/storage/app/public, у меня нет каталога, и все мои аватары пользователей (первоначально в ~/storage/app/public/images/users) были удалены:

Все исчезло:

enter image description here

Я думаю, это потому, что эти файлы не находятся в моем каталоге GitHub, что совершенно нормально.

Но я думаю Semaphore отбрасывает все в каталоге и помещает все файлы, представленные в Github ...

Я использую git push heroku -f $SEMAPHORE_GIT_BRANCH:master, вот мой

Файл Heroku.yml:

# .semaphore/heroku.yml
version: v1.0
name: Heroku DEV deployment
agent:
  machine:
    type: e1-standard-2
    os_image: ubuntu1804

blocks:
  - name: Deploy
    task:
      secrets:
        - name: scenario-dev
      env_vars:
        - name: HEROKU_REMOTE
          value: https://git.heroku.com/scenario-dev.git
      jobs:
      - name: Push code
        commands:
          - checkout --use-cache
          - ssh-keyscan -H heroku.com >> ~/.ssh/known_hosts
          - chmod 600 ~/.ssh/id_rsa_semaphore_heroku_dev
          - ssh-add ~/.ssh/id_rsa_semaphore_heroku_dev
          - git config --global url.ssh://git@heroku.com/.insteadOf https://git.heroku.com/
          - git remote add heroku $HEROKU_REMOTE
          - git push heroku -f $SEMAPHORE_GIT_BRANCH:master

Я думаю, что что-то пропустил в моих файлах конфигурации. Спасибо всем за помощь!

...