我正在尝试使用以下方式将文件上传到我的 gitlab 存储库:
x = project.upload("Jenkinsfile", filepath="./Jenkinsfile")但它对我不起作用,所以
x1 = project.upload("Jenkinsfile", filepath="/media/conde/Trabajo/Trabajo/DevOps/BOMH/bomh/Jenkinsfile"),不行,让我们尝试一下文档示例,因为它不需要文件系统路径,所以它至少要创建一个空的新文件:
x2 = project.upload("filename.txt", filedata="data")
但从未上传文件。每个命令的输出为:
x={'url': '/uploads/c52cf003900c7afe6843909317049cc3/Jenkinsfile', 'markdown': 'Jenkinsfile', 'alt': 'Jenkinsfile'}
x1 = {'url': '/uploads/c52cf003900c7afe6843909317049cc3/Jenkinsfile', 'markdown': 'Jenkinsfile', 'alt': 'Jenkinsfile'}
x2 = {'url': '/uploads/3c2a389555609ba08c3bd54bee0e7339/filename.txt', 'markdown': 'filename.txt', 'alt': 'filename.txt'}
文档、API 有什么问题吗?我可以创建存储库、分支并创建一些文件,但不能从我的计算机上传文件。
我想通过Yandex.OAuth对 gitlab 用户进行身份验证。我正在尝试使用oauth2_generic策略,但无法获取用户信息。有谁知道如何配置它?
我有一个项目,它在遵循特定约定的文件夹中生成 go main 文件。问题是,当有代码推送时,我需要在 Gitlab CI 管道中并行构建这些项目,并且我无法对它们进行硬编码,.gitlab-ci.yml因为它们是动态生成的。我需要并行构建这些 go 项目,并且如果所有单个项目构建都成功,则需要通过构建阶段。有人可以告诉我在 Gitlab 中是否可行吗?
我正在尝试使用 Gitlab 及其 CI/CD 设施将我的网站自动部署到远程服务器。我正在使用一个名为 middleman 的静态站点生成器,它将所有文件生成到构建文件夹中。这在本地有效,如果我手动上传文件,它将准确反映我想要的内容。问题是使用以下命令时,尽管它正确生成了所有文件;
$ lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -Rv build/ ./public_html --delete-first --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"
Run Code Online (Sandbox Code Playgroud)
这就是最终被吐出来的;
Removing old file `stylesheets/styles-bb5541bd.css'
Removing old file `stylesheets/styles-bb5541bd.css.gz'
Transferring file `stylesheets/styles-4deda93b.css'
Transferring file `stylesheets/styles-4deda93b.css.gz'
Run Code Online (Sandbox Code Playgroud)
如您所见,我正在使用资产哈希值,但这里它正在更新样式表哈希值,但没有将其反映在单独的 HTML 文件中,这些文件显然会引用新的哈希值...给出了什么?文件本身已更新,但未上传。
非常感谢对此的任何帮助。
是否可以master在git中重命名?
如果不可能,有没有办法获得类似的结果?例如,创建一个具有自定义名称的分支(比如batman),将该分支设为新的主分支并删除旧的主分支?
举个例子。这就是我现在所拥有的:
user@machine gitprojectpath (master)
$
Run Code Online (Sandbox Code Playgroud)
这就是我想要的
user@machine gitprojectpath (batman)
$
Run Code Online (Sandbox Code Playgroud) 我有一个 Go 项目,需要来自私有 GitLab 存储库(例如git.mydomain.com/myteam/category/subcategory/project.git. 但我收到这个错误。
ensure Solve(): remote repository at https://git.mydomain.com/myteam/category.git does not exist or is inaccessible: : exit status 128
Run Code Online (Sandbox Code Playgroud) 我想在我的 docker 镜像中运行sentry-cli,如下所示:
sentry-frontend:
stage: sentry
services:
- docker:18-dind
before_script:
- docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" registry.xxx.xx
script:
- export SENTRY_AUTH_TOKEN=xxxxxxxxxxxxxxxxxx
- export IMAGE=$CI_REGISTRY_IMAGE/frontend-builder:$CI_COMMIT_REF_NAME
- export RELEASE_VERSION=$CI_COMMIT_REF_NAME
- docker pull getsentry/sentry-cli
- docker run --rm -v $(pwd):/work getsentry/sentry-cli releases -o org -p frontend new $RELEASE_VERSION
tags:
- dindRun Code Online (Sandbox Code Playgroud)
然而工作失败了,因为
error: API request failed
caused by: sentry reported an error: Authentication credentials were not provided. (http status: 401)
我试过:
- docker run --rm -v $(pwd):/work getsentry/sentry-cli --auth-token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
但是之后我收到了与跑步时相同的消息
docker …
在我的 gitlab ci 管道中,我想在为主分支运行管道的任何地方推送一个标签。但问题是我无法将标签推送到存储库上。
我正在尝试使用 GITLAB_TOKEN 推送 git 标签
image:
name: X
entrypoint: [""]
stages:
- deploy
deploy:
stage: deploy
script:
# Generating new tag version using stk utility
- git config --global user.email $USER_MAIL
- git config --global user.name $USER_NAME
- git config --global http.postBuffer 52428800
- git remote set-url origin https://$USER_NAME:$GITLAB_TOKEN@${CI_PROJECT_URL:8}
- export NEW_TAG_VERSION=<generating new git tag>
- echo $NEW_TAG_VERSION
- if [ $CI_COMMIT_REF_NAME == "master" ]; then \
- git tag -a v$NEW_TAG_VERSION -m "[skip ci] new …Run Code Online (Sandbox Code Playgroud) 我试图找到解决这个问题的方法,但没有找到。
问题:
我们有图像文件/public/img/InfoNews/example.png,每次推送更新时 gitlab-runner 都会删除远程上的这些文件。
我们/public/img/InfoNews的.gitignore这可以防止 git 上传本地文件,但不能出于某种原因删除该文件夹中的远程文件。
我尝试将此路径添加到缓存和工件中,但.gitlab-ci.yml没有成功
朝着正确的方向推动是值得赞赏的。
我们的.gitlab-ci.yml:
cache:
paths:
- vendor/
- public/img/
deploy:
stage: deploy
script:
- php artisan cache:clear
- rm -rf vendor/
- composer install
- echo "$env" > "$(pwd)/.env"
- php artisan migrate
artifacts:
paths:
- .env
- public/img/
Run Code Online (Sandbox Code Playgroud)
编辑:
我也尝试过
cache:
untracked: true
paths:
- vendor/
- public/img/
Run Code Online (Sandbox Code Playgroud)
但它仍然删除文件。
我目前正在尝试通过 GitLab 为 Firebase 上托管的 React 应用程序设置 CI。我正在努力克服这一点。还有其他一些帖子建议使用 sudo 但控制台告诉我找不到该命令。
\n\n任何帮助将不胜感激。感谢您。
\n\n这是我当前的配置:
\n\ngitlab-ci.yml 配置文件
\n\nimage: node:10.15.3\r\n\r\ncache:\r\n paths:\r\n - node_modules/\r\n\r\nstages:\r\n - build\r\n - deploy\r\n \r\ndeploy_dev:\r\n stage: deploy\r\n script:\r\n - echo "Deploying to staging environment"\r\n - npm install -g firebase-tools\r\n - firebase deploy --token $FIREBASE_DEPLOY_KEY --project $CI_ENVIRONMENT_NAME\r\n environment:\r\n name: dev\r\n only:\r\n - masterRun Code Online (Sandbox Code Playgroud)\r\n包.json
\n\n{\r\n "name": "react-app",\r\n "version": "0.1.0",\r\n "private": true,\r\n "dependencies": {\r\n "bootstrap": "^4.4.1",\r\n "firebase": "^6.6.2",\r\n "firebase-functions": "^3.3.0",\r\n …Run Code Online (Sandbox Code Playgroud)continuous-integration continuous-deployment gitlab firebase reactjs