User Tools

Site Tools


инструмент_gitlab

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
инструмент_gitlab [2026/03/19 14:58]
val [Пример CI с использованием контейнеров]
инструмент_gitlab [2026/09/01 13:25] (current)
val [Пример CI/CD с использованием ИИ]
Line 110: Line 110:
 sudo -i sudo -i
  
-export BR=main; bash <(curl -s http://​gate.corp13.un/​api/​v4/​projects/​1/​repository/​files/​start.sh/​raw?​ref=$BR)+export BR=main; bash <(curl -s http://​gate.corpX.un/​api/​v4/​projects/​1/​repository/​files/​start.sh/​raw?​ref=$BR)
 </​code>​ </​code>​
  
Line 150: Line 150:
  
 <​code>​ <​code>​
-### docker exec -it root_web_1 ​bash +### docker exec -it root-gitlab-1 ​bash 
-### kubectl -n my-gitlab-ns exec -ti pods/gitlab-<​TAB> ​-- bash+### kubectl -n my-gitlab-ns exec -ti deployment/gitlab -- bash
  
 # ###​gitlab-ctl status # ###​gitlab-ctl status
Line 163: Line 163:
 real    2m34.726s real    2m34.726s
 ... ...
 +</​code>​
 +
 +==== 500: We're sorry, something went wrong on our end ====
 +<​code>​
 +# gitlab-rails console
 +
 +irb(main):​001>​ ApplicationSetting.delete_all
 +
 +irb(main):​001>​ ActiveRecord::​Base.connection.execute("​UPDATE application_settings SET runners_registration_token_encrypted = NULL, error_tracking_access_token_encrypted = NULL, encrypted_ci_jwt_signing_key = NULL")
 +
 +irb(main):​002>​ Project.update_all(runners_token:​ nil, runners_token_encrypted:​ nil)
 +irb(main):​003>​ Group.update_all(runners_token:​ nil, runners_token_encrypted:​ nil)
 +
 +irb(main):​004>​ Ci::​RunnerProject.delete_all
 +irb(main):​005>​ Ci::​Runner.delete_all
 +irb(main):​006>​ Rails.cache.clear
 </​code>​ </​code>​
 ==== Настройка отправки почты ==== ==== Настройка отправки почты ====
Line 169: Line 185:
 <​code>​ <​code>​
 root@gitlab:/#​ gitlab-rails console root@gitlab:/#​ gitlab-rails console
-irb(main):​001>​ Notify.test_email('​student@corp15.un', '​Message Subject',​ '​Message Body'​).deliver_now+irb(main):​001>​ Notify.test_email('​student@corpX.un', '​Message Subject',​ '​Message Body'​).deliver_now
 </​code>​ </​code>​
 ==== GitLab Docker Registry ==== ==== GitLab Docker Registry ====
Line 298: Line 314:
  
   * [[https://​docs.gitlab.com/​runner/​install/​linux-manually.html|Install GitLab Runner manually on GNU/Linux]]   * [[https://​docs.gitlab.com/​runner/​install/​linux-manually.html|Install GitLab Runner manually on GNU/Linux]]
-  * [[https://​val.bmstu.ru/​unix/​Git/​gitlab-runner_amd64.deb]] (16.10.0+  * [[https://​val.bmstu.ru/​unix/​Git/​gitlab-runner_amd64.deb]] (17.3.1-1
  
 <​code>​ <​code>​
Line 416: Line 432:
   * [[https://​medium.com/​@ryzmen/​gitlab-fast-pipelines-stages-jobs-c51c829b9aa1|GitLab:​ understanding pipelines, stages, jobs and organising them efficiently for speed and feedback loop]]   * [[https://​medium.com/​@ryzmen/​gitlab-fast-pipelines-stages-jobs-c51c829b9aa1|GitLab:​ understanding pipelines, stages, jobs and organising them efficiently for speed and feedback loop]]
   * [[https://​stackoverflow.com/​questions/​64725914/​how-to-disable-auto-pipelines-in-gitlab|How to disable auto pipelines in gitlab]]   * [[https://​stackoverflow.com/​questions/​64725914/​how-to-disable-auto-pipelines-in-gitlab|How to disable auto pipelines in gitlab]]
 +  * [[Самый простой пример CI/CD]]
  
 ==== Пример shell make ==== ==== Пример shell make ====
Line 773: Line 790:
 #  tags: #  tags:
 #    - build #    - build
-#+
 #semgrep: #semgrep:
 #  stage: lint #  stage: lint
-#  ​script+#  ​imagesemgrep/​semgrep 
-   docker run --rm -v ${PWD}:/src -e https_proxy=http://​gate.isp.un:​3128/ ​semgrep/​semgrep semgrep --config=auto --error+ ​script:​ semgrep ​--config=auto ​--error 
 +#  variables: 
 +#    SEMGREP_SRC_DIRECTORY:​ $CI_PROJECT_DIR 
 +#    #https_proxyhttp://​gate.isp.un:​3128/​ 
 +#    #no_proxy: localhost,​127.0.0.1,​isp.un,​corpX.un
 #  except: #  except:
 #    - tags #    - tags
Line 808: Line 829:
 #trivy: #trivy:
 #  stage: scan #  stage: scan
 +#  image:
 +#    name: ghcr.io/​aquasecurity/​trivy
 +#    entrypoint: [""​] ​
 +#  variables:
 +#    #​TRIVY_USERNAME:​ "​$CI_REGISTRY_USER"​
 +#    #​TRIVY_PASSWORD:​ "​$CI_REGISTRY_PASSWORD"​
 +#    TRIVY_REGISTRY:​ "​$CI_REGISTRY"​
 +#    TRIVY_CACHE_DIR:​ "​.trivycache/"​
 #  script: #  script:
-#    - +#    - trivy image --exit-code 1 --severity HIGH --insecure $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA 
-#      docker run --rm +#  cache: 
-#      -v $(pwd)/​.trivyignore:/​work/​.trivyignore -w /work/ +#    paths: 
-#      aquasec/trivy --exit-code 1 --insecure ​image $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA+#      - "​.trivycache/"​
 #  except: #  except:
 #    - tags #    - tags
Line 826: Line 855:
 #  trigger: #  trigger:
 #    project: student/​gowebd-k8s #    project: student/​gowebd-k8s
 +</​code>​
 +
 +==== Пример CI/CD с использованием ИИ ====
 +
 +  * [[Самый простой пример CI/CD]]
 +  * [[OpenCode]]
 +
 +<​code>​
 +gitlab-runner@gate:​~$ cat ~/​.config/​opencode/​opencode.jsonc
 +</​code><​code>​
 +stages:
 +  - test
 +  - test-ai
 +  - deploy
 +...
 +test1-ai-job:​
 +  stage: test-ai
 +  script:
 +    - >
 +      ~/​.opencode/​bin/​opencode run --agent plan 
 +      "
 +      проверь синтаксис файла permit_domains.txt в текущем каталоге,​
 +      используется для acl dstdomain squid 6,
 +      объясни если есть ошибки,​ не задавай вопросы,​ не запускай,​ не исправляй,​
 +      заверши ответ новой строкой строго со слова FAIL или SUCCESS
 +      "
 +      | tee opencode_log.txt
 +    - tail -n2 opencode_log.txt|grep SUCCESS
 +  tags:
 +    - squid-tag
 +...
 </​code>​ </​code>​
 ===== Сервер OpenID ===== ===== Сервер OpenID =====
Line 835: Line 895:
 <​code>​ <​code>​
 Name: test-cgi Name: test-cgi
-Redirect URI: http://​gate.corp13.un/​cgi-bin/​test-cgi ​ !!! Если URL каталога,​ то без финального "/"​ !!!+Redirect URI: http://​gate.corpX.un/​cgi-bin/​test-cgi ​ !!! Если URL каталога,​ то без финального "/"​ !!!
 Trusted: Yes Trusted: Yes
 Confidential:​ Yes Confidential:​ Yes
инструмент_gitlab.1773921504.txt.gz · Last modified: 2026/03/19 14:58 by val