Кэширование каталога данных MySQL в GitHub Действия после выполнения миграции базы данных

1
8

В GitHub Actions есть возможность кэширования и восстановления определенных папок, которые обычно являются папками поставщиков, заполненными менеджерами пакетов. Мне нужно поместить результат выполнения миграций базы данных в папку кэша и восстановить его при следующем запуске, чтобы схема была там, и миграции не нужно было запускать с нуля. Проблема в том, что каталог данных, в котором MySQL хранит данные на диске, загадочен, и данные там нельзя увидеть с помощью команды ls на шаге действия. Несмотря на процесс кэширования папок поставщиков, похоже, никто не кэширует папку данных базы данных там, на GitHub. Есть ли какой-либо надежный способ кэширования и восстановления каталога данных MySQL или это не рекомендуется?

Вот что я пробовал, но не сработало:

      - name: Change permission of mysql data dir
        run: |
          sudo chown -R mysql:mysql /var/lib/mysql
          sudo chmod -R 755 /var/lib/mysql

      - name: Restore cached mysql data
        id: cache-mysql-data
        uses: actions/cache@v4
        with:
          path: /var/lib/mysql
          key: mysql-data-dir

...


      - name: Run Migration
        run: php artisan migrate

      - name: Save migration result to cache
        uses: actions/cache/save@v4
        with:
          key: mysql-data-dir
          path: /var/lib/mysql

      - name: Test APIs with phpunit
        run: php artisan test
Тарас
Вопрос задан9 мая 2024 г.

1 Ответ

Ваш ответ

Загрузить файл.