Github 操作是否可以上传构建工件以在发布分支上提交,然后让另一个工作流程下载并使用该工件?
name: Deploy release to UAT & archive artifact
on:
release:
types: [published]
jobs:
package:
name: package and archive
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12'
- name: serverless package
uses: serverless/github-action@master
with:
args: package --stage=prod
- name: Upload Release Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: .serverless
asset_name: release-asset-${{ github.event.release.name }}.zip
asset_content_type: application/zip
- name: Upload Artifact
uses: actions/upload-artifact@v2
with:
name: release-artifact-${{ github.event.release.name }}
path: .serverless …Run Code Online (Sandbox Code Playgroud) 我正在使用客户端的WSDL文件,该文件对输入和输出消息使用相同的元素定义,但是我无法让JAX-WS/JAXB解组响应.
<wsdl:message name="invokeServiceRequest">
<wsdl:part element="impl:requests" name="multiRequestWrapper"/>
</wsdl:message>
<wsdl:message name="invokeServiceResponse">
<wsdl:part element="impl:requests" name="result"/>
</wsdl:message>
<wsdl:portType name="GCGatewayPortType">
<wsdl:operation name="requests">
<wsdl:input message="impl:invokeServiceRequest" name="invokeServiceRequest"/>
<wsdl:output message="impl:invokeServiceResponse" name="invokeServiceResponse"/>
</wsdl:operation>
</wsdl:portType>
Run Code Online (Sandbox Code Playgroud)
由于某种原因,wsimport生成的代码具有void返回,并且在收到响应时似乎不更新INOUT参数.
/**
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.1.7-b01-
* Generated source version: 2.1
*/
...
@WebMethod
@RequestWrapper(localName = "requests", targetNamespace = "http://cg.test.com/", className = "com.test.cg.RequestsType")
@ResponseWrapper(localName = "requests", targetNamespace = "http://cg.test.com/", className = "com.test.cg.RequestsType")
public void requests(
@WebParam(name = "paramOne", targetNamespace = "http://cg.test.com/", mode = WebParam.Mode.INOUT)
Holder<String> paramOne, …Run Code Online (Sandbox Code Playgroud) 我们的团队正在从CVS过渡到Git.我们打算像GitHub上的大多数开源项目一样使用类似的工作流 - 每个开发人员都使用主仓库的分支,然后提交一个拉取请求,允许项目主人在将更改合并到主仓库之前进行代码审查.
Jenkins允许我们添加多个Git存储库(标准的Git插件,而不是Multiple SCM插件).据推测,我可以为每个分叉的仓库输入URL,然后Jenkins将检查每个分支的所有分支以进行更改.我给每个存储库命名,例如"master","developer1","developer2"......
我们希望让Jenkins在适当的远程/ fork上标记每个构建.Git Publisher插件要求您提供"目标远程名称",但我们需要Jenkins能够自己解决这个问题.
我正在尝试配置Maven来构建Eclipse应用程序(与所有Eclipse EXE打包在一起的Eclipse插件等).
我已经完成了项目的几十个依赖项,并将它们部署到我们的内部Nexus(OSS)服务器.我还安装了Nexus P2 Repository插件和P2 Bridge插件(2.6.3-01)以及Nexus Unzip插件(0.12.0).我可以浏览到我们的组存储库的.meta/p2文件夹,但它当前是空的.
这应该比目前看起来简单得多.我的目标是Windows上的Eclipse 3.4.2(Ganymede).如果它有所不同,我们实际上将我们的应用程序部署为精简版/自定义Eclipse安装.
当我对着pom运行maven时,<packaging>eclipse-repository</packaging>我收到以下错误:
[ERROR] Missing requirement: MyApp 0.0.0 requires
'org.eclipse.equinox.executable.feature.group 0.0.0'
but it could not be found
Run Code Online (Sandbox Code Playgroud)
...我从哪里获得,以及如何将其添加到Nexus?
当我对着pom运行maven时,<packaging>eclipse-plugin</packaging>我收到以下错误:
[ERROR] Missing requirement: MyApp 0.0.0 requires
'bundle org.eclipse.ui 0.0.0'
but it could not be found
Run Code Online (Sandbox Code Playgroud)
...但是我在本地文件系统上找到了以下目录(怀疑itp-04-rcp生成了第一个目录):
D:\maven\repository\p2\osgi\bundle\org.eclipse.ui\3.6.2.M20110203-1100
D:\maven\repository\p2\osgi\bundle\org.eclipse.ui\3.7.0.v20110928-1505
Run Code Online (Sandbox Code Playgroud)
我还尝试了pom-first-dependencies和manifest-first-dependency组合:http://wiki.eclipse.org/Tycho/How_Tos/Dependency_on_pom-first_artifacts
我不明白这是如何工作的 - 我可以从Git构建itp02.我可以看到它构建了两个包:
+---------------------+---------------------+--------------------------------------+ | artifactId | Bundle-Name | Bundle-SymbolicName | +---------------------+---------------------+--------------------------------------+ | pomfirst-bundle | pomfirst-bundle | tycho.demo.itp02.pomfirst-bundle | | pomfirst-thirdparty | pomfirst-thirdparty | tycho.demo.itp02.pomfirst-thirdparty | …
我有一个运行NodeJS代码的AWS Lambda函数,用于将文件从S3传输到在EC2实例上运行的ClamAV.
通常(大约75%的时间)系统工作,但经常(特别是当从不同的Lambda容器扫描多个文件时)clamd线程被卡住INSTREAM.
一旦线程INSTREAM进入25-30秒,它似乎无法恢复.当它已经QUEUEDSINCE350秒时被杀死.我无法弄清楚这些数字中的任何一个与我的配置中的任何值有什么关系.
我很难在日志中找到任何错误的迹象 - INSTREAM请求的数量与完整扫描的数量相匹配:
$ sudo grep -c "got command INSTREAM" /var/log/clamav/clamav.log
129
$ sudo grep -c "Chunks complete" /var/log/clamav/clamav.log
129
$ sudo grep -c "Scanthread: connection shut down" /var/log/clamav/clamav.log
129
Run Code Online (Sandbox Code Playgroud)
...好吧,既然我对日志有了更深入的了解,那么扫描一些内容需要花费更长的时间.当我执行一批16个文件时,Lambda并发限制为7,前几个文件将在几秒钟内被扫描.下一个文件很快就开始扫描,在一秒内到达"Chunks complete",但在"Scanthread:connection shutdown"之前需要23秒.从这里开始它变得更糟 - 1:24,1:45 ......然后第3批7个文件需要3分钟才能扫描.
如果我给系统几分钟安定下来,所有的线程都会消失,相同的文件花了3分钟现在大约需要5-7秒.
如果我在更快的机器上运行相同的测试,性能会提高,但问题仍然存在:
当线程陷入困境时INSTREAM我可以看到文件仍然存在:
$ ls -al /tmp
drwx------ 2 clamav clamav 4096 Aug 29 16:52 clamav-493bdf893ce4d8d7763c00fee22d9d69.tmp
-rwx------ 1 clamav clamav 25683921 Aug 29 16:52 clamav-5cdefd83d5531a03c7cf22fda37d133f.tmp
Run Code Online (Sandbox Code Playgroud)
是否可以从模板中的多个s 重用AWS::CloudFormation::Init(和/或userdata)相同的bootstrapping配置EC2::Instance?
我需要设置3个文件的内容,然后运行3个命令来引导所有服务器,但该Metadata块大约30行(并且可能会增长).每个服务器实例都有一组不同的标签,有些标签比其他标签更多.
理想情况下,我认为您应该能够将其声明AWS::CloudFormation::Init为资源,并从多个EC2::Instances中引用它,但我不认为这是可能的.
我最初认为(作为一个新手)AWS::CloudFormation::CustomResource可能是合适的,但我认为不是.
我目前正在考虑使用a AWS::CloudFormation::Stack来导入共享实例模板,但我需要以某种方式将Tags堆栈模板中每个资源的参数传递给实例模板.问题是 - 如果这是最好的方法,我应该在目前的3个地点输入什么?????
(奖金积分 - userdata和这个init块之间有什么区别?)
...
"Resources" : {
"Server1" : {
"Type": "AWS::CloudFormation::Stack",
"Properties": {
"Parameters": {
"InstanceType": "m1.medium",
...
"Tags": { ???? }
},
"TemplateURL": "https://s3.amazonaws.com/mybucket/instance.template"
}
Run Code Online (Sandbox Code Playgroud)
...
"Parameters" : {
"InstanceType" : {...}
"KeyName": {...}
...
"Tags": {
????
}
},
"Resources" : {
"Instance" : …Run Code Online (Sandbox Code Playgroud) 我正在尝试配置Jenkins(在Windows Server 2008上运行)连接到GitLab 6.0存储库(在Linux机器上).
从我的本地Windows框中,我可以使用SSH URL克隆我的GitLab服务器上的项目.我在使用HTTP URL时遇到了一些问题,但我确实设法使用Eclipse插件使用HTTP进行身份验证.
在Jenkins项目配置屏幕上,我尝试过:
无法连接到存储库:
命令"d:\ tools\Git\bin\git.exe ls-remote -h http://myserver.domain/mygroup/myproject.git HEAD"
返回状态码128:
stdout:stderr:错误:访问时请求的URL返回错误:504
HTTP://myserver.domain/mygroup/myproject.git/info/refs服务=混帐上传包
致命:HTTP请求失败
当我在浏览器中尝试此URL时,我会获得一个身份验证弹出窗口.如果我输入我的电子邮件和密码,我可以成功下载分支和标签列表.
...好的,我应该能够在URL中指定用户名和密码,对吧?
...不:
http:// username:password@myserver.domain/mygroup/myproject.git/info/refs无效:这是一个git存储库吗?
Windows GUI在使用SSH时没有任何问题.
......詹金斯似乎并不喜欢那么多:
git@myserver.domain:MYGROUP/myproject.git
错误"请输入Git存储库"仍然存在,当我尝试保存配置时,我看到以下堆栈跟踪:
Exception: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from
{"value":"2",
"userRemoteConfigs":
{"url":"git@myserver.domain:mygroup/myproject.git",
"name":"origin","refspec":""
},
"branches":{"name":""},
"includedRegions":"","excludedRegions":"","excludedUsers":"",
"localBranch":"","relativeTargetDir":"","reference":"",
"scmName":"",
"gitConfigName":"","gitConfigEmail":"",
"pruneBranches":false,"skipTag":false,"clean":false,"remotePoll":false,
"disableSubmodules":false,"recursiveSubmodules":false,
"authorOrCommitter":false,"wipeOutWorkspace":false,"ignoreNotifyCommit":false,
"useShallowClone":false,"":["","0"],
"gitTool":"Default",
"browser":{"stapler- class":"hudson.plugins.git.browser.FisheyeGitRepositoryBrowser"}
Stacktrace:
javax.servlet.ServletException:
java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {...}
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:725)
...
Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM …Run Code Online (Sandbox Code Playgroud)Google Cloud Functions 的文档有点模糊 - 我了解如何部署其中包含的单个函数index.js- 即使在特定目录中,但如何部署位于同一存储库中的多个云函数?
AWS Lambda 允许您指定特定文件和函数名称:
/my/path/my-file.myHandler
Run Code Online (Sandbox Code Playgroud)
Lambda 还允许您部署仅包含运行所需文件的 zip 文件,省略所有可选的可传递 npm 依赖项及其资源。对于某些库(例如 Oracle DB),包括node-modules/**会显着增加部署时间,并可能超出存储限制(在 AWS Lambda 上确实如此)。
我可以使用 Google Cloud Function 部署进行管理的最佳方式是:
$ gcloud alpha functions deploy my-function \
--trigger-http
--source-url https://github.com/user-name/my-repo.git \
--source-branch master \
--source-path lib/foo/bar
--entry-point myHandler
...但我的理解是它部署的lib/foo/bar/index.js内容包含function myHandler(req, res) {}...以及连接在同一文件中的所有依赖项?这根本没有意义 - 就像我说的,文档有点模糊。
我正在使用calabash-android测试我的android应用程序,它提供了自己的"测试项目",脚本重命名它的包以反映被测试的应用程序,然后使用InstrumentationTestRunner子类:
adb shell am instrument -w -e class sh.calaba.instrumentationbackend.InstrumentationBackend #{ENV['TEST_PACKAGE_NAME']}/sh.calaba.instrumentationbackend.CalabashInstrumentationTestRunner
Run Code Online (Sandbox Code Playgroud)
我会接受任何答案,允许我为Android应用程序生成类似于Emma或Cobertura的代码覆盖率报告,并在calabash-android中测试时收集数据.
coverage.em生成一个文件target/emma-e coverage true"adb -e pull /data/data/my.project/files/coverage.ec coverage.ec...所以现在我应该可以运行:
java -cp $ANDROID_HOME/tools/lib/emma.jar emma report -r html -in target/emma/coverage.em,coverage.ec但是我收到一个错误:
EMMA: processing input files...
java.io.UTFDataFormatException: malformed input around byte 107
Run Code Online (Sandbox Code Playgroud)
...所以我认为android maven插件有问题,我正在试图弄清楚如何生成coverage.em文件.我跑了" android update project -p ."," ant emma"和" ant emma debug",但我无法在任何地方找到报道 ......
...生成的build.xml文件似乎暗示只有在运行"ant emma test"时才会生成coverage.em文件,但我认为这不会起作用,因为测试应用程序是由葫芦 - 机器人.
我正在通过Nginx运行GitLab 6.0.0并且可以分叉小型存储库,但是当我尝试分叉大型存储库(2GB)时,我会在大约一分钟后看到" 502 Bad Gateway "页面.
/var/log/nginx/gitlab_error.log 说明:
2013/08/29 12:21:33 [error] 25098#0: *221 upstream prematurely closed connection while reading response header from upstream,
client: 12.34.56.78,
server: myserver,
request: "POST /mygroup/myproject/fork HTTP/1.1",
upstream: "http://unix:/home/git/gitlab/tmp/sockets/gitlab.socket:/mygroup/myproject/fork",
host: "myserver",
referrer: "http://myserver/mygroup/myproject/fork"
Run Code Online (Sandbox Code Playgroud)