标签: devops

尽管skipDefaultCheckout true J​​enkins仍然克隆存储库

尽管使用了skipDefaultCheckout true,它仍然克隆了git repo。我的目标只是寻找更改然后执行某些脚本。我已经没有主意了。我尝试了如何在脚本化管道中使用 SkipDefaultCheckout,但我想它不起作用?

pipeline {
  agent any
  options {
    skipDefaultCheckout true
  }
   environment {
       branch = 'test'
   }
  stages {
    stage('commit_stage') {
      steps {
        script {
          properties([pipelineTriggers([pollSCM('*/5 * * * *')])])
          git branch: "${branch}", credentialsId: 'test', url: 'https://gitlab.test.net/core/test.git'
          sh '''
          branch=${branch}
          ssh bamboo@app-test.synchr.net "cd /opt/${branch}-8*/ && ./startup.sh status"
             '''
                }
          //define scm connection for polling

      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

groovy jenkins devops jenkins-pipeline

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

是否可以像 AWS ELB 一样跟踪 GCP 负载均衡器内的请求?

我注意到,在 AWS 中,您可以跟踪负载均衡器上的请求,这对于唯一标识非常有用。在 Google Cloud Platform 中,我们似乎仅限于几个不提供唯一 ID 的变量。

有人使用 GCP 并实施唯一 ID 吗?

资料来源:

https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-request-tracing.html

https://cloud.google.com/load-balancing/docs/user-define-request-headers

trace load-balancing amazon-web-services google-cloud-platform devops

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

如何使用执行期间生成的变量动态设置 Ansible playbook 中的主机字段?

我正在尝试使用 Ansible 提供的变量机制在家测试一些东西,我即将在我的工作项目之一中实现该机制。所以,现在已经搜索了一段时间,但似乎我无法让它那么容易地工作,即使到处都有其他人的解决方案。

我现在将通过在家中演示我的测试目录和文件结构来代表我的项目逻辑。情况如下,我有以下剧本:

main.yaml
pl1.yaml
pl2.yaml
Run Code Online (Sandbox Code Playgroud)

./main.yaml 的内容:

  - import_playbook: /home/martin/ansible/pl1.yaml
  - import_playbook: /home/martin/ansible/pl2.yaml
Run Code Online (Sandbox Code Playgroud)

./pl1.yaml 的内容:

- name: Test playbook 1
  hosts: localhost
  tasks:
  - name: Discovering the secret host
    shell: cat /home/martin/secret
    register: whichHostAd
  - debug:
      msg: "{{ whichHostAd.stdout }}"
  - name: Discovering my hostname
    shell: hostname
    register: myHostnameAd
  - set_fact:
      whichHost: "{{ whichHostAd.stdout }}"
      myHostname: "{{ myHostnameAd.stdout }}"
    cacheable: yes

- name: Test playbook 1 part 2
  hosts: "{{ hostvars['localhost']['ansible_facts']['whichHost'] }}"
  tasks:
  - name: Structuring info
    shell: …
Run Code Online (Sandbox Code Playgroud)

variables ansible ansible-awx devops

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

Errno 14 HTTPS 错误 301 - 安装 Jenkins 时永久移动 - yum install jenkins

[root@###~]# yum install jenkins 加载的插件:fastestmirror、product-id、search-disabled-repos、subscription-manager

该系统未向授权服务器注册。您可以使用订阅管理器进行注册。

从缓存的主机文件加载镜像速度

配置的存储库之一失败(Jenkins-stable),并且 yum 没有足够的缓存数据来继续。此时 yum 能做的唯一安全的事情就是失败。有几种方法可以“修复”这个问题:

 1. Contact the upstream for the repository and get them to fix the problem.

 2. Reconfigure the baseurl/etc. for the repository, to point to a working
    upstream. This is most often useful if you are using a newer
    distribution release than is supported by the repository (and …
Run Code Online (Sandbox Code Playgroud)

continuous-integration failed-installation jenkins devops

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

使用 Gitlab api 在 Gitlab 存储库中创建标签

我在 GitLab 中有 4 个存储库,名为 Repo1、Repo2、Repo3 和 Repo4

现在我如何使用 GitLab api 为所有 Repo 的 master 分支创建标签 v1.0 ?

git api gitlab devops gitlab-api

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

从 api 将参数传递给 devops 构建管道

我无法理解我需要做什么...但我有一个构建管道...下面是我用于测试的基本脚本。
我希望能够通过 api 和 powershell 添加/更新参数。我不确定这是否是实现此目的的最佳方法,但当我手动添加参数时,它似乎运行良好。当我传递参数时,它不会粘住。任何帮助将不胜感激......即使我应该在其他地方发布我的查询。谢谢

  1. 管道脚本

     variables:
        patchgroup: test
    
     jobs: 
     - template: patch-template.yml  
    
       parameters:    
         patchgroup: $(patchgroup)    
         sqlservers:      
           - sqlserver: name: ""
    
    Run Code Online (Sandbox Code Playgroud)
  2. 补丁模板文件

    parameters:
      sqlservers: {}
      patchgroup: ''
    
    jobs:
    - ${{ each sqlserver in parameters.sqlservers }}:
      - template: patch-tasks.yml
        parameters:
          sqlserver: ${{ sqlserver.name }}
          patchgroup: ${{ parameters.patchgroup }}
    
    Run Code Online (Sandbox Code Playgroud)
  3. 补丁任务参数:sqlserver: '' patchgroup: ''

     jobs:
       - job: 
         displayName: '${{ parameters.sqlserver }}--set-up-stuff'
         steps:
         - task: PowerShell@2
           inputs:
             targetType: 'inline'
             script: |
               Write-Host "Patchgroup '${{ parameters.patchgroup }}'"
               Write-Host "sqlserver '${{ parameters.sqlserver }}'"
    
    Run Code Online (Sandbox Code Playgroud)
  4. powershell脚本

     $defurl …
    Run Code Online (Sandbox Code Playgroud)

api powershell build devops azure-pipelines

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

如何使Azure Pipelines yaml触发特定项目的分支?

我在 Github 上有这个项目存储库,并且该存储库中有很多项目。

所以在我的场景中是这样的。

api-build-pipeline 项目-1:触发分支-1 ui-build-pipiline 项目-2:触发分支-1

因此,如果我只对project-1 有更新,则不应触发project-2,但如果它们的触发器是同一分支,我不知道该怎么做。

我想要像这样的触发器触发器:-branch-1 ..project-1

那可能吗?如果可能的话,我不希望他们使用不同的分支。

devops azure-devops

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

Gitlab Ci include local 仅最后执行

我为一个应用程序构建了很多不同的 Android 风格,所以我想将构建拆分为不同的 yml 文件。我目前有我的基本文件.gitlab-ci.yml

image: alvrme/alpine-android:android-29-jdk11

variables:
  GIT_SUBMODULE_STRATEGY: recursive

before_script:
    - export GRADLE_USER_HOME=`pwd`/.gradle
    - chmod +x ./gradlew
    
cache:
  key: "$CI_COMMIT_REF_NAME"
  paths:
     - .gradle/

stages:
  - test
  - staging
  - production
  - firebaseUpload
  - slack

include:
  - local: '/.gitlab/bur.yml'
  - local: '/.gitlab/vil.yml'
  - local: '/.gitlab/kom.yml'
Run Code Online (Sandbox Code Playgroud)

我目前正在尝试打造 3 种不同的口味。但我不知道为什么只有最后包含的 yml 文件被执行。前 2 个被忽略。

/.gitlab/bur.yml

unitTests:
  stage: test

  script:
    - ./gradlew testBurDevDebugUnitTest
Run Code Online (Sandbox Code Playgroud)

/.gitlab/vil.yml

unitTests:
  stage: test

  script:
    - ./gradlew testVilDevDebugUnitTest
Run Code Online (Sandbox Code Playgroud)

/.gitlab/kom.yml

unitTests:
  stage: test

  script:
    - ./gradlew testKomDevDebugUnitTest
Run Code Online (Sandbox Code Playgroud)

yaml gitlab gitlab-ci devops

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

如何通过 Jumphost 转发 k8 pod 的端口

我可以通过 ssh 进入跳转主机,从那里我可以访问 k8 集群。有一个特定的 pod,其 UI 暴露在端口 4040 上,我如何在本地浏览器上查看它?

到目前为止,通过执行以下命令我已经弄清楚了

kubectl port-forward podName 4040:4040
Run Code Online (Sandbox Code Playgroud)

我现在可以在 Jumphost 上访问 UI(通过基于文本的浏览器)

portforwarding kubernetes devops kubectl

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

如何在 Terraform 中按标签获取所有 AWS Lambda

我有带有 Name=product 标签的 Lambda。

我想使用 Terraform 获取它们,查看aws_lambda_function,我只能通过 function_name 获取单个 lambda

data "aws_lambda_function" "existing" {
   function_name = var.function_name
}
Run Code Online (Sandbox Code Playgroud)

amazon-web-services terraform devops terraform-provider-aws

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