MCPcopy Index your code
hub / github.com/1Panel-dev/1Panel / createIndexFile

Function createIndexFile

agent/app/service/website_utils.go:126–174  ·  view source on GitHub ↗
(website *model.Website, runtime *model.Runtime)

Source from the content-addressed store, hash-verified

124}
125
126func createIndexFile(website *model.Website, runtime *model.Runtime) error {
127 var (
128 indexPath string
129 indexContent string
130 websiteService = NewIWebsiteService()
131 indexFolder = GetSitePath(*website, SiteIndexDir)
132 )
133
134 switch website.Type {
135 case constant.Static:
136 indexPath = path.Join(indexFolder, "index.html")
137 indexHtml, _ := websiteService.GetDefaultHtml("index")
138 indexContent = indexHtml.Content
139 case constant.Runtime:
140 if runtime.Type == constant.RuntimePHP {
141 indexPath = path.Join(indexFolder, "index.php")
142 indexPhp, _ := websiteService.GetDefaultHtml("php")
143 indexContent = indexPhp.Content
144 }
145 }
146
147 fileOp := files.NewFileOp()
148 if !fileOp.Stat(indexFolder) {
149 if err := fileOp.CreateDir(indexFolder, constant.DirPerm); err != nil {
150 return err
151 }
152 }
153 if !fileOp.Stat(indexPath) {
154 if err := fileOp.CreateFile(indexPath); err != nil {
155 return err
156 }
157 }
158 if website.Type == constant.Runtime && runtime.Resource == constant.ResourceAppstore {
159 if err := chownRootDir(indexFolder); err != nil {
160 return err
161 }
162 }
163 if err := fileOp.WriteFile(indexPath, strings.NewReader(indexContent), constant.DirPerm); err != nil {
164 return err
165 }
166
167 html404, _ := websiteService.GetDefaultHtml("404")
168 path404 := path.Join(indexFolder, "404.html")
169 if err := fileOp.WriteFile(path404, strings.NewReader(html404.Content), constant.DirPerm); err != nil {
170 return err
171 }
172
173 return nil
174}
175
176func createProxyFile(website *model.Website) error {
177 proxyFolder := GetSitePath(*website, SiteProxyDir)

Callers 1

createWebsiteFolderFunction · 0.85

Calls 8

StatMethod · 0.95
CreateDirMethod · 0.95
CreateFileMethod · 0.95
WriteFileMethod · 0.95
NewIWebsiteServiceFunction · 0.85
GetSitePathFunction · 0.85
chownRootDirFunction · 0.85
GetDefaultHtmlMethod · 0.65

Tested by

no test coverage detected