Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--acceptance_test.go11
-rw-r--r--internal/source/disk/map.go8
-rw-r--r--shared/pages/@hashed/hashed.gitlab.io/config.json7
-rw-r--r--shared/pages/@hashed/hashed.gitlab.io/public/index.html1
4 files changed, 27 insertions, 0 deletions
diff --git a/acceptance_test.go b/acceptance_test.go
index 02c71f1d..7817bf81 100644
--- a/acceptance_test.go
+++ b/acceptance_test.go
@@ -1900,6 +1900,17 @@ func TestDomainsSource(t *testing.T) {
apiCalled: false,
},
},
+ {
+ name: "disk_source_domain_should_not_exist_under_hashed_dir",
+ args: args{
+ configSource: "disk",
+ domain: "hashed.com",
+ },
+ want: want{
+ statusCode: http.StatusNotFound,
+ apiCalled: false,
+ },
+ },
// TODO: modify mock so we can test domain-config-source=auto when API/disk is not ready https://gitlab.com/gitlab-org/gitlab/-/issues/218358
}
diff --git a/internal/source/disk/map.go b/internal/source/disk/map.go
index 5c053fcb..874565a6 100644
--- a/internal/source/disk/map.go
+++ b/internal/source/disk/map.go
@@ -16,6 +16,10 @@ import (
"gitlab.com/gitlab-org/gitlab-pages/metrics"
)
+// preventive measure to skip `@hashed` dir for new zip deployments when sourcing config from disk
+// https://gitlab.com/gitlab-org/gitlab-pages/-/issues/468
+const skipHashedDir = "@hashed"
+
// Map maps domain names to Domain instances.
type Map map[string]*domain.Domain
@@ -180,6 +184,10 @@ func (dm Map) ReadGroups(rootDomain string, fis godirwalk.Dirents) {
buf := make([]byte, 2*os.Getpagesize())
for group := range fanOutGroups {
+ if group == skipHashedDir {
+ continue
+ }
+
started := time.Now()
readProjects(group, "", 0, buf, fanIn)
diff --git a/shared/pages/@hashed/hashed.gitlab.io/config.json b/shared/pages/@hashed/hashed.gitlab.io/config.json
new file mode 100644
index 00000000..100963e4
--- /dev/null
+++ b/shared/pages/@hashed/hashed.gitlab.io/config.json
@@ -0,0 +1,7 @@
+{
+ "Domains": [
+ {
+ "Domain": "hashed.com"
+ }
+ ]
+}
diff --git a/shared/pages/@hashed/hashed.gitlab.io/public/index.html b/shared/pages/@hashed/hashed.gitlab.io/public/index.html
new file mode 100644
index 00000000..175ec469
--- /dev/null
+++ b/shared/pages/@hashed/hashed.gitlab.io/public/index.html
@@ -0,0 +1 @@
+@hashed/index.html