如何设置一个GitLab页面暂存区(不登录可见?)



我有一个私人回购我想为它设置一个暂存区并在推送到dev分支时部署。

现在这是我的.gitlab-ci.yml

image: alpine:latest
pages:
stage: deploy
script:
- echo 'Nothing to do...'
artifacts:
paths:
- public
only:
- master
review:
stage: deploy
script: |
# Nothing
artifacts:
paths:
- public
environment:
name: Review
url: "https://$CI_PROJECT_NAMESPACE.gitlab.io/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/public/index.html"
variables:
PUBLIC_URL: "/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/public"

当登录到GitLab时,我可以看到https://$CI_PROJECT_NAMESPACE.gitlab.io/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/public/index.html的作业工件。但是注销/外部用户看不到这个URl。他们被重定向到登录页面。

文档似乎表明这是因为项目被设置为private: Forprivate项目,发给所有项目成员(Guest或更高级别)

是否有办法建立一个公开访问的登台区私有GitLab页面回购?还是我必须公开回购?

是的,你可以设置页面"函数是公共的,而存储库本身是私有的。进入Settings > General,然后将Project visibility设置为private,将Pages设置为Everyone。

最新更新