标签: devops

GitHub 操作发布标签

在 GitHub 中创建发布后,我会触发 GitHub 操作。在此操作中,我想从发布中获取一些数据,这可能吗?例如,我想获取标签,然后使用这个标签作为NuGet包版本。有没有办法从工作中获取这些数据?

yaml release github devops github-actions

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

Kubectl 从 cronjob 创建作业并覆盖参数

Kubectl允许您根据现有的 crons 创建临时作业。

这很有效,但在文档中没有指定在创建作​​业时传递参数。

例子:

kubectl -n my-namespace create job --from=cronjob/myjob my-job-clone
Run Code Online (Sandbox Code Playgroud)

有什么办法可以在创建时将争论传递给这项工作吗?

cron amazon-web-services kubernetes devops kubectl

15
推荐指数
2
解决办法
8256
查看次数

Gitlab-CI 规则如果/更改未按预期工作

我们正在与 GitLab CI 合作,刚刚发生了一个奇怪的行为。我们尝试仅在文件发生更改并且处于合并请求而不是简单的 git 分支时运行给定作业(例如,lint如下所示) 。*.py例如,如果我要在 上推送更改Readme.MD,则此处管道的作业Lint将在不应该执行的地方执行。

.gitlab-ci.yml配置:

image: python:3.7

stages:
  - pre-build
  - test

.ci_rules:
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_IID'
      changes:
        - tests/*.py
        - tests/*/*.py
        - src/*.py
        - src/*/*.py
    - if: $CI_COMMIT_REF_NAME == "develop"
    - if: $CI_COMMIT_REF_NAME == "main"

lint:
  stage: pre-build
  script:
    - pip install flake8
    - flake8
  rules:
    - !reference [ .ci_rules, rules ]

# [... other jobs not relevant for the issue]
Run Code Online (Sandbox Code Playgroud)

continuous-integration gitlab gitlab-ci devops

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

持续集成,持续交付和DevOps有什么区别?

我一起听到这些术语,并想知道有什么区别?它们与持续构建和持续部署有何关系?

continuous-integration continuous-delivery devops

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

为本地开发创建不同的 eslint 规则

这是一个激励示例:我正在开发一些代码并想弄清楚出了什么问题,所以我有

function foo() {
    console.log("Look its 2016 and I'm still printf debugging");
}
Run Code Online (Sandbox Code Playgroud)

除了……我们的构建过程将 esLint 作为构建系统的一部分运行,并且如果 esLint 失败,设计上甚至会阻止运行其余的构建管道。 error Unexpected console statement no-console

我实际上想要的是设置一个dev环境,在其中关闭某些规则(或转换为警告),然后设置一个production打开严格规则的环境。而且我希望能够轻松地在本地切换它,以便我可以在将代码提交到 CI 服务器之前验证我的代码是否有效。

我找不到任何相关的代码片段来实现这一点,这让我很伤心。我的构建环境只是npm脚本(仅使用 esLint CLI + package.json),但我很乐意从另一个构建环境移植解决方案。

现在,我只能// eslint-disable-line在本地修改.eslintrc文件并祈祷我不会意外地将其签入。一定会有更好的办法。

javascript node.js npm eslint devops

14
推荐指数
3
解决办法
4560
查看次数

从Jenkinsfile设置管道名称和描述

我试图做一个jenkins管道作为代码.我正在使用Github组织文件夹插件来扫描Github组织并为每个分支创建作业.有没有办法明确定义从Jenkinsfile获取的管道作业的名称?我还想为这些工作添加一些描述.

jenkins devops jenkinsfile

14
推荐指数
3
解决办法
2万
查看次数

Logstash与Kafka的不同之处

Log stash如何与Kafka不同?如果两者相同哪个更好?如何?

我发现两者都是可以推送数据进行进一步处理的管道.

apache-kafka devops elastic-stack

14
推荐指数
3
解决办法
8213
查看次数

什么是gitlab跑步者

我想我从根本上错过了一些东西.我是CI/CD的新手,并试图用gitlab设置我的第一个管道.

该项目是一个预先存在的PHP项目.

我还不想清理它,此刻我已经将整个东西推入了一个docker容器中,它正好与google cloud的mysql数据库等交谈,因为它应该在本地以及远程google云测试VM .我们的梦想是能够推动开发分支,然后将dev banch合并到测试分支中,然后TRIGGERS自动化测试(简单部分),并且还导致远程测试VM(托管在谷歌云上),推出最新更改,从最新的docker文件重建图像(或从gitlab图像寄存器中提取最新图像)...然后使用最新图像重建容器.

我正在玩gitlab的跑步者,但我不了解它的实际情况,尽管几乎查看了所有的在线内容.我只是将它安装在谷歌云虚拟机中,然后当我从我的开发机器推送到gitlab时...回购将"发出信号"跑步者(在VM上运行,执行一堆脚本(可能包括git拉最新的变化?).

因为我已经将我的应用程序预先打包到本地容器中(并将图像推送到图像注册表)我是否需要使用docker作为我在跑步者身上的执行者?或者我可以使用shell和shell命令吗?

我错过了什么?

TLDR和额外:

问题:

  1. 什么是跑步者实际上,它意味着安装在哪里?
    是否关心它运行在哪个目录中?
    如果它不关心它运行的目录,它在哪里执行它的脚本命令?在根?

  2. 如果我在本地构建自己的图像并将其上传到gitlab的注册表,

我需要将执行者设置为docker吗?我不应该只是将它设置为shell,拉动图像,并构建它?(假设跑步者在远程VM上运行).

gitlab gitlab-ci-runner devops

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

Google Kubernetes Engine:为服务类型启用HTTPS

我在GKE上有一个应用程序,我希望仅通过HTTPS提供,因此我获得了一个签名证书以使用TLS保护应用程序.

我已经查看了很多有关如何执行此操作的教程,但它们都是指使用Ingress并使用LetsEncrypt和KubeLego自动请求证书.但我希望继续使用外部负载平衡器(谷歌为我提供的计算引擎实例),但我只想通过https访问我的应用程序.

如何应用我的server.crt和server.key文件来启用https.Do我将它应用于负载均衡器或kubernetes集群.

google-cloud-platform kubernetes devops

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

重新启动集群时出错:重新启动kube-proxy:等待kube-proxy启动以进行configmap更新:等待条件超时

我正在尝试启动本地Kubernetes集群minikube start并获取以下错误.

Starting local Kubernetes v1.10.0 cluster...
Starting VM...
Getting VM IP address...
Moving files into cluster...
Setting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
E0912 17:39:12.486830   17689 start.go:305] Error restarting 
cluster:  restarting kube-proxy: waiting for kube-proxy to be 
up for configmap update: timed out waiting for the condition
Run Code Online (Sandbox Code Playgroud)

知道如何确保它开始吗?我正在使用VirtualBox和教程.我试过这里给出的小费,但没有运气.

还有任何具体的原因,为什么需要这么长时间才能达到这个阶段?或者它通常这么慢?

kubernetes devops minikube

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