【发布时间】:2019-05-29 06:13:09
【问题描述】:
一点背景...
我有一个托管在 Azure 上的小型 dotnet 核心应用程序,正在使用 Azure DevOps Pipelines 构建和部署。在我们开始使用 DevOps Pipelines 之前,CI 直接连接到 Azure,它编译得很好,但需要一个实际的生命周期来部署,因此决定迁移。
但是,构建管道不再编译或输出 sass/css 文件夹
其他一切正常 - 我签入,构建管道获取我的提交并执行以下步骤:
- 恢复 [.NET Core]
- 构建 [.NET Core]
- 发布 [.NET Core]
- 发布构建工件
第 3 步(发布)的一部分使用 Gulp 任务:
gulp.task('prod', function (callback) {
runSequence('clean','set-prod',
['icon-sprite', 'logo-sprite', 'images', 'sass', 'modernizr', 'mainjs', 'adminjs'],
callback);
});
在本地(和以前)这会生成五个文件夹:
- 图标
- 图片
- js
- 标志
- css(现在神秘失踪)
我尝试过的变体
我已经尝试删除我的本地 css 文件夹并运行 CLI dotnet publish 完全一样管道所做的,并且在本地似乎可以正常工作。
我还剥离了 sass 任务,以防在管道中的某个地方引起问题,所以现在看起来像这样:
return gulp.src('src/sass/style.scss')
.pipe(sass({outputStyle: 'compressed'}))
.pipe(gulp.dest('wwwroot/dist/css));
我可以在 Pipeline 的控制台日志中看到所有输出,并且它成功执行了 sass 任务:
2019-01-02T14:43:51.3558593Z [14:43:51] Starting 'sass'...
2019-01-02T14:43:51.9284145Z [14:43:51] Finished 'sass' after 524 ms
构建脚本中没有其他错误或警告,一切都完成并启动发布管道(将工件复制到 Azure 站点)。
推测
我预计某处会出现错误...但什么都没有 - 所有的绿色刻度都非常高兴...所以我对可能发生或可能不会发生的事情感到有些困惑!我只能认为 Pipeline 环境中一定有一些依赖或缺少什么? Orrrrr 也许我错过了一个管道步骤?
任何帮助、轻推或想法将不胜感激!感谢您通过我的小论文坚持下去,以及您可以提供的任何帮助:)
【问题讨论】:
-
这是托管(在 Microsoft 服务器上)构建代理还是本地构建代理?如果它在本地(或安装在您有权访问的服务器上),您可以远程访问构建代理并查看作业目录并查看生成的文件在放入工件之前是否存在。
-
嘿杰米!不幸的是,它是一个 MS 托管的 DevOps Build Pipeline 任务 - 对于管道的东西还是相当新的,但是如果我能在发布之前看到正在构建的内容,它会非常方便......?我会继续闲逛:)
-
哇。我有完全相同的问题。我这边有趣的是 dist 文件夹应该有
scripts和css。两者都可以在本地正常生成,但是在通过管道运行时,构建工件只有scripts文件夹。css文件夹在操作中丢失。
标签: azure sass gulp azure-devops azure-pipelines