小编Gan*_*anu的帖子

Gitlab CI/CD 合并请求 - CI_MERGE_REQUEST_SOURCE_BRANCH_NAME 和目标分支名称为空

我希望仅当有合并请求时才启动 Gitlab 管道。不在对任何分支的提交上。

only:
 refs:
  - merge_requests
changes:
  - "**/*.json"   except:
  - $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == "master"
  - $CI_COMMIT_REF_NAME == "master"
Run Code Online (Sandbox Code Playgroud)

但是当我创建合并请求时,会启动两个管道请求。一个为

  • 分离的合并请求管道:这是在创建合并请求(尚未批准)时启动的。我希望这条管道运行被阻止。但这次运行已填充所有 MR 变量。

仅供参考,我有一些设置变量值的规则,并阅读这导致了此问题。我尝试了下面提到的方法:( https://gitlab.com/gitlab-org/gitlab/-/issues/201845 ) 来阻止分离管道并且它有效。但现在我无法访问 MR 变量。

workflow:
  rules:
    - if: $CI_MERGE_REQUEST_IID
    - if: $CI_OPEN_MERGE_REQUESTS
      when: never
Run Code Online (Sandbox Code Playgroud)
  • 合并分支管道:这是在合并完成/批准后启动的。我只想启动这条管道。但在此分支上,所有合并请求变量 - CI_MERGE_REQUEST_SOURCE_BRANCH_NAME 和 CI_MERGE_REQUEST_TARGET_BRANCH_NAME 均为空。

如何实现以下目标:

阻止分离分支请求的管道运行并获取合并分支管道运行的 MR 变量?

更新 1:我在设置上启用了合并结果管道并删除了 MERGE_REQUEST_IID 规则。现在合并结果管道正在运行而不是分离,但合并结果管道在合并被批准之前正在执行?抱歉,这很令人困惑。是否有办法仅在合并获得批准后启动管道并访问该管道运行中的 MR 变量?

gitlab-ci gitlab-ci-runner

6
推荐指数
1
解决办法
6524
查看次数

带有Razor页面的ASP .Net Core与UI的Angular

我们的企业应用程序是一个庞大的应用程序(超过1000页),主要是精美的数据输入应用程序。没有主要的业务流程。所有大多数页面都具有CRUD。我们正在尝试将整个应用程序从旧的代码库(C / C ++)-桌面应用程序重新架构为基于Web的应用程序。

我们从Angular开始,但是由于对Java知识的了解有限,这是一条陡峭的学习曲线。仅供参考:我们所有的开发人员都知道C#。我们发现很难将新开发人员带入Angular / Javascript世界。

综上所述,我一直在研究ASP .Net Core + Razor Pages,发现与Angular相比,它更容易过渡。这些是我到目前为止看到的优点:

  1. 在HTML中处理C#POCO以进行绑定。无需转换为基于TS的POCO。
  2. 使用数据注释进行模型级验证
  3. API级别的默认路由或自定义路由。一处定义路由。
  4. 最少使用JavaScript。仅供参考:也尝试使用WebAssembly。我们也在寻找Blazor

由于这是一个数据输入系统,客户端渲染与服务器渲染是否重要?

与ASP .Net Core 2 + Razor Pages相比,使用.Net Core Web API选择Angular有更好的优势吗?

angular blazor asp.net-core-2.2

5
推荐指数
3
解决办法
2840
查看次数