gpt4 book ai didi

github - 在另一个目录中运行操作

转载 作者:行者123 更新时间:2023-12-04 04:26:53 24 4
gpt4 key购买 nike

我刚刚开始探索 Github 操作,但是我发现自己在多个地方放置了一个命令。

我有一个 PHP 项目,其中 composer.json不在根目录中,我的结构如下所示:

my-project:
readme.md
app:
composer.json

显然还有更多,这是有原因的,但我的 composer.json位于名为“app”的子目录中。因此,在我的工作流程中,我每次都必须 cd 进入该文件夹才能运行命令:
name: CI

on: [push]

jobs:
phpunit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup Symfony
run: |
cd app
cp .env.dev .env
- name: Install Composer Dependencies
run: |
cd app
composer install --prefer-dist
- name: Run Tests
run: |
cd app
php bin/phpunit

如何删除 cd app在每个阶段?

最佳答案

更新 :现在可以设置 working-directory作业的默认值。见 this answer .
有一个选项可以设置 working-directory在一个步骤上,但不适用于多个步骤或整个工作。我相当确定此选项仅适用于脚本步骤,而不适用于 uses 的操作步骤.
https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsrun
使用 working-directory ,您的工作流程将如下所示。它仍然很冗长,但可能更简洁一些。

name: CI

on: [push]

jobs:
phpunit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup Symfony
working-directory: ./app
run: cp .env.dev .env
- name: Install Composer Dependencies
working-directory: ./app
run: composer install --prefer-dist
- name: Run Tests
working-directory: ./app
run: php bin/phpunit
或者,您可以一步运行,这样您只需指定 working-directory一次。
name: CI

on: [push]

jobs:
phpunit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup and run tests
working-directory: ./app
run: |
cp .env.dev .env
composer install --prefer-dist
php bin/phpunit

关于github - 在另一个目录中运行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58139175/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com