I have the following job set up
tests: name: Integration tests runs-on: ubuntu-latest container: image: wordpress:5.4.1-php7.2 env: WORDPRESS_DB_HOST: mysql WORDPRESS_DB_USER: admin WORDPRESS_DB_PASSWORD: "" WORDPRESS_DB_NAME: wordpresstest ports: - 8080:80 volumes: - wordpress:/var/www/html/:rw options: --cpus 2 services: mysql: image: mysql:5.7 env: MYSQL_ALLOW_EMPTY_PASSWORD: yes MYSQL_DATABASE: wordpresstest ports: - 3306 options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 steps: - name: Checkout uses: actions/checkout@v2 - name: PHP setup uses: shivammathur/setup-php@v2 with: php-version: 7.2 coverage: pcov - name: Set Node.js version uses: actions/setup-node@v1 with: node-version: 14 - name: Copy .env.testing run: yes | cp .env.actions.testing .env.testing
it’s not fully complete because I have two issues here (and I’m probably not understanding things right).
When I get to the last step it fails because none of my hidden files (except .gitattributes and .gitignore) are present in the checkout phase. But when I had wordpress as a service and not a container, everything was checked out correctly.
Another thing that confuses me is, if I’m in a container (in my case WordPress one), shouldn’t I see all the WordPress files when I do
Or are the steps executed on the GH host machine, and the container is started, but the only way to access it would be to exec into it?