有人可以查看我的 yaml 文件以使用 Bitbucket Pipelines 进行代码部署吗?

Can someone look at my yaml file for code deployment using Bitbucket Pipelines?

这是我第一次尝试设置管道甚至使用任何 CI/CD 工具。因此,阅读 Bitbucket 上的文档后,我在 Laravel 应用程序的根目录中添加了 bitbucket-pipelines.yml 文件以进行构建。这是文件。

image: php:7.4-fpm

pipelines:
  default:
    - step:
        name: Build and test
        caches:
          - composer
        script:
          - apt-get update && apt-get install -qy git curl libmcrypt-dev mariadb-client ghostscript
          - yes | pecl install mcrypt-1.0.3
          - docker-php-ext-install pdo_mysql bcmath exif
          - curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --file           name=composer
          - composer install
          - ln -f -s .env.pipelines .env
          - php artisan migrate
          - ./vendor/bin/phpunit
        services:
          - mysql
          - redis
definitions:
  services:
    mysql:
      image: mysql:5.7
      environment:
        MYSQL_DATABASE: "laravel-pipeline"
        MYSQL_RANDOM_ROOT_PASSWORD: "yes"
        MYSQL_USER: "homestead"
        MYSQL_PASSWORD: "secret"
    redis:
      image: redis   

以上内容在构建应用程序、运行 测试等方面运行良好。但是当我添加以下内容进行部署时,使用 scp 管道,我收到一条通知,说我需要包含图像,或者有时通知说映射条目的缩进错误。

- step:
      name: Deploy to test
      deployment: test
      # trigger: manual  # Uncomment to make this a manual deployment.
    script:
      - pipe: atlassian/scp-deploy:0.3.13
        variables:
          USER: '${remoteUser}'
          SERVER: '${server}'
          REMOTE_PATH: '${remote}'
          LOCAL_PATH: '${BITBUCKET_CLONE_DIR}/*'

我不太了解 yaml,这是我第一次使用 CI/CD 工具,所以我迷路了。有人可以指导我做错什么吗?

名称和部署的缩进与脚本的缩进不同。试着像这样把它们都放在同一个缩进上。

- step:
    name: Deploy to test
    deployment: test
    script:
      - pipe: atlassian/scp-deploy:0.3.13
        variables:
          USER: '${remoteUser}'
          SERVER: '${server}'
          REMOTE_PATH: '${remote}'
          LOCAL_PATH: '${BITBUCKET_CLONE_DIR}/*'