Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Azure JAVA函数+针对不同环境的DevOps管道

Azure JAVA函数+针对不同环境的DevOps管道
EN

Stack Overflow用户
提问于 2020-10-09 03:44:49
回答 1查看 568关注 0票数 0

我在JAVA中有Azure函数项目。不幸的是,java并不是很受支持)-:所以,一切都“有点”不同。那么,您能告诉我如何将用java编写的函数项目部署到azure的示例或文档吗?因为我想要的都只是问题的一部分--而且这些部分并不合二为一)-:

  • java使用azure-function-maven-plugin (它是功能核心工具的包装器)。
  • 这个插件准备了滞胀文件夹,该文件夹被压缩到ZIP,并作为“包”部署。
  • 不幸的是,这个滞胀文件夹是根据函数名命名的。因此,ZIP包依赖于目标蔚蓝资源名称。

不可能构建独立的包(ZIP)并将其部署到几个不同的环境(stages/dev/test/prod)。

尤其是当您使用CI/CD管道时。不可能有一个构建管道和多个部署管道。因为构建必须根据目标部署名称命名(内部目录),所以不独立。这违背了每个环境都有一个构建和几个配置的基本原则。

知道如何在不构建几个构建的情况下解决这个问题吗?谢谢。

编辑: maven "mvn包(+azure-function: package )“准备用目录构建

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
${projectRoot}/target/azure-functions/${functionResourceName}/...

哪里

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/... 

压缩为名为:${functionResourceName}.zip的最终蔚蓝包。

因此,"functionResourceName“只是在ZIP文件的名称中(+包含具有相同名称的jar )。但是..。

..。如果您尝试使用(另一个名称)将此ZIP部署到azure函数资源,则会失败。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-15 21:29:41

是。我确实手动准备包(使用发布构建工件任务)。

我想分享一下将Java函数包部署到Azure函数的步骤。

以下是我的步骤:

在建造管道中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
steps:
- task: Maven@3
  displayName: 'Maven pom.xml'
  inputs:
    mavenPomFile: '$(Parameters.mavenPOMFile)'
    options: 'azure-functions:package'

- task: CopyFiles@2
  displayName: 'Copy Files to: $(build.artifactstagingdirectory)'
  inputs:
    SourceFolder: '$(system.defaultworkingdirectory)'
    Contents: '**/azure-functions/**'
    TargetFolder: '$(build.artifactstagingdirectory)'
  condition: succeededOrFailed()

- task: ArchiveFiles@2
  displayName: 'Archive $(Build.ArtifactStagingDirectory)/target/azure-functions/kishazureappfunction'
  inputs:
    rootFolderOrFile: '$(Build.ArtifactStagingDirectory)/target/azure-functions/kishazureappfunction'
    includeRootFolder: false

- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact: drop'
  inputs:
    PathtoPublish: '$(build.artifactstagingdirectory)'
  condition: succeededOrFailed()

在释放管道:

我使用Azure应用程序服务部署任务。(为了清楚起见,我将其转换为yaml格式)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- task: AzureRmWebAppDeployment@4
  displayName: 'Azure App Service Deploy: kevin1014'
  inputs:
    azureSubscription: kevintest
    appType: functionApp
    WebAppName: kevin1014
    packageForLinux: '$(System.DefaultWorkingDirectory)/_123-Maven-CI/drop/1.zip'
    enableCustomDeployment: true
    DeploymentType: runFromZip

结果:

azure函数名和包名不同。但是它可以成功地部署到Azure函数中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64279410

复制
相关文章
手工修复Azure DevOps无法连接到Azure的问题
今天我在为一个从TFVC迁移到Git的老项目重新配置发布到Azure App Service的CI/CD管线的时候,Azure DevOps竟然爆了。这是一个微软已知的bug,目前还未修复,我来带大家看看如何手工workaround这个问题。
Edi Wang
2019/07/09
1.5K0
手工修复Azure DevOps无法连接到Azure的问题
Azure DevOps+Docker+Asp.NET Core 实现CI/CD(三.实现CD持续部署管道)
本文主要是讲解如何使用Azure DevOps+Docker 来实现持续集成Asp.NET Core项目(当然 也可以是任意项目).
GuZhenYin
2020/08/11
5130
Azure DevOps+Docker+Asp.NET Core 实现CI/CD(三.实现CD持续部署管道)
容器和DevOps:基于容器的DevOps交付管道
DevOps 的出现是为了满足不断增长的市场和消费者对技术应用程序的需求。它旨在在不牺牲软件质量的情况下创建更快的开发环境。DevOps 还专注于在快速开发生命周期中提高软件的整体质量。它依赖于多种技术、平台和工具的组合来实现所有这些目标。
DevOps云学堂
2022/02/13
8230
容器和DevOps:基于容器的DevOps交付管道
使用 Docker、Kubernetes 和 Azure DevOps 实现 DevOps
这篇文章,我们将会介绍所有你想了解的 DevOps 知识,看完后你可以着手构建自己的 CI/CD 流水线。
LinuxSuRen
2020/05/26
1.2K0
Azure DevOps+Docker+Asp.NET Core 实现CI/CD(二.创建CI持续集成管道)
本文主要是讲解如何使用Azure DevOps+Docker 来实现持续集成Asp.NET Core项目(当然 也可以是任意项目).
GuZhenYin
2020/08/11
7320
Azure DevOps+Docker+Asp.NET Core 实现CI/CD(二.创建CI持续集成管道)
从零开始针对 .NET 应用的 DevOps 运营实践 - 运行环境搭建
最近的一段时间,在公司里我都在进行基于 Jenkins 和 SonarQube 配合已有的 Gitlab 搭建部门的持续集成环境的工作,虽然之前有使用过 GitHub Actions 和 Azure DevOps,但是从头开始搭建这样的一套 DevOps 环境还是学习到了一些新的知识点,因此,借着这个中秋国庆假期的机会,分享下整个工具链的搭建过程,如果你也有相似的需求的话,希望可以对你有所帮助
程序员宇说
2020/10/19
8490
从零开始针对 .NET 应用的 DevOps 运营实践 - 运行环境搭建
最近的一段时间,在公司里我都在进行基于 Jenkins 和 SonarQube 配合已有的 Gitlab 搭建部门的持续集成环境的工作,虽然之前有使用过 GitHub Actions 和 Azure DevOps,但是从头开始搭建这样的一套 DevOps 环境还是学习到了一些新的知识点,因此,借着这个中秋国庆假期的机会,分享下整个工具链的搭建过程,如果你也有相似的需求的话,希望可以对你有所帮助
梁规晓
2020/10/26
8360
从零开始针对 .NET 应用的 DevOps 运营实践 - 运行环境搭建
[Microsoft Teams]使用连接器接收Azure Devops的通知
连接器(connector)是Teams中频道的一个接受消息的功能,官方的解释如下:
dino.c
2020/03/24
1.7K0
[Microsoft Teams]使用连接器接收Azure Devops的通知
解决Azure DevOps部署到Azure后.NET Core网站无法启动的问题
最近我遭遇了一个奇怪的问题。使用Azure DevOps配置CI/CD管线,自动部署到Azure App Service以后,.NET Core的网站竟然会启动失败。我们来看看如何解决这个问题。
Edi Wang
2019/07/09
9270
解决Azure DevOps部署到Azure后.NET Core网站无法启动的问题
使用Azure DevOps持续集成GitHub项目
微软的Azure DevOps是一款软件开发管理工具,整合了需求、代码、编译、测试、发布等所有功能于一身。今天我们就来看看如何用Azure DevOps对自己GitHub上的项目做持续集成,并能在GitHub显示最新编译状态。
Edi Wang
2019/07/08
1.2K0
使用Azure DevOps持续集成GitHub项目
Azure 静态 web 应用集成 Azure 函数 API
前几次我们演示了如何通过Azure静态web应用功能发布vue跟blazor的项目(使用 Azure静态web应用+Github全自动部署VUE站点、使用Azure静态Web应用部署Blazor Webassembly应用)。但是一个真正的web应用,总是免不了需要后台api服务为前端提供数据或者处理数据的能力。同样前面我们也介绍了Azure函数服务,Azure函数的http trigger可以对http作出响应,可以完美的承当web api的角色。现在Azure静态web应用可以直接集成Azure函数,使得一次发布可以同时发布前端项目(vue、blazor)及后台api服务(azure函数)。
MJ.Zhou
2020/11/24
1.2K0
Azure 静态 web 应用集成 Azure 函数 API
使用Azure DevOps Pipeline实现.Net Core程序的CI
上次介绍了Azure Application Insights,实现了.net core程序的监控功能。这次让我们来看看Azure DevOps Pipeline功能。Azure DevOps Pipeline 是Azure DevOps里面的一个组件,对于12个月试用账号同样永久免费。
MJ.Zhou
2020/07/21
7400
使用Azure DevOps Pipeline实现.Net Core程序的CI
从一个小 Bug,到 Azure DevOps
最近和同事提起一个几年前的 Bug,那是一个很小很小的 Bug,没什么技术含量。那时候我刚入职,正好公司卖了一款仪器到某个国家,但是那边说配套的软件运行不起来,一打开就报错。经过排查发现出错的代码很简单,大致是这样:
dino.c
2021/11/30
4710
从一个小 Bug,到 Azure DevOps
在线Python环境(Azure Notebooks)
上文说道了anaconda的安装和使用。对于动手能力较差的小伙伴们来说,安装还是太过麻烦,一出现问题也不知道如何查错,然后就从入门选择放弃。
罗罗攀
2019/04/18
1.7K0
在线Python环境(Azure Notebooks)
win10 uwp 使用 Azure DevOps 自动构建
通过 Azure DevOps 可以做到自动构建程序,覆盖计划、创建、编程、测试、部署、发布、托管、共享等各个环节,适用于大多数的语言、平台。 本文继续使用图床为例告诉大家如何使用 Azure DevOps 自动构建
林德熙
2019/03/13
4930
win10 uwp 使用 Azure DevOps 自动构建
Azure DevOps 中 Dapr项目自动部署流程实践
注:本文中主要讨论 .NET6.0项目在 k8s 中运行的 Dapr 的持续集成流程, 但实际上不是Dapr的项目部署到K8s也是相同流程,只是k8s的yaml配置文件有所不同
重典
2022/04/11
4030
Azure DevOps 中 Dapr项目自动部署流程实践
DevSecOps管道和工具:需要了解的内容[DevOps]
到目前为止,DevOps在IT界已经得到了很好的理解,但是并不是完美的。假设已经在一个项目的现代应用程序交付中实现了所有DevOps工程实践。到达了开发管道的末端,但是一个渗透测试团队(内部或外部)发现了一个安全缺陷,并提出了一个报告。现在必须重新启动所有流程,并要求开发人员修复缺陷。
yyx
2019/12/03
1.2K0
DevSecOps管道和工具:需要了解的内容[DevOps]
Azure DevOps 部署成功后自动发邮件通知
默认情况下,Azure DevOps 在编译成功或失败后,会给项目成员发邮件通知。但是在CI/CD环境下,我们更关心的是什么时候部署完成,然后开展手工或自动化测试。我们来看看如何让 Azure DevOps 在部署成功后自动发邮件通知组员。
Edi Wang
2019/07/09
2K0
Azure DevOps 部署成功后自动发邮件通知
Sonar LTS 版本 8.9发布|新特性
开发人员可以通过静态应用程序安全性测试(SAST)来控制代码安全性,以使用更多语言,更多规则,更好的检测并改善工作流程。
DevOps云学堂
2021/05/11
1.5K0
Sonar LTS 版本 8.9发布|新特性
CRT:一款针对Azure的CrowdStrike安全报告工具
CRT全称为“CrowdStrike Reporting Tool for Azure”,是一款针对Azure的CrowdStrike安全报告工具。该工具会在Azure AD/O365 租户中查询以下配置,并帮助广大研究人员寻找一些跟权限和配置有关的安全信息,以帮助组织更好地保护Azure环境的安全性。
FB客服
2022/04/11
9800
CRT:一款针对Azure的CrowdStrike安全报告工具

相似问题

针对特定环境的Azure Devops管道

17

带有环境的Azure DevOps管道卡住

15

Azure Devops发布管道中针对不同分支的多个计划

17

Azure DevOps模板管道函数

13

具有干净Python环境的Azure Devops管道

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文