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

Function createPemFile

agent/app/service/website_utils.go:757–788  ·  view source on GitHub ↗
(website model.Website, websiteSSL model.WebsiteSSL)

Source from the content-addressed store, hash-verified

755}
756
757func createPemFile(website model.Website, websiteSSL model.WebsiteSSL) error {
758 configDir := GetSitePath(website, SiteSSLDir)
759 fileOp := files.NewFileOp()
760
761 if !fileOp.Stat(configDir) {
762 if err := fileOp.CreateDir(configDir, constant.DirPerm); err != nil {
763 return err
764 }
765 }
766
767 fullChainFile := path.Join(configDir, "fullchain.pem")
768 privatePemFile := path.Join(configDir, "privkey.pem")
769
770 if !fileOp.Stat(fullChainFile) {
771 if err := fileOp.CreateFile(fullChainFile); err != nil {
772 return err
773 }
774 }
775 if !fileOp.Stat(privatePemFile) {
776 if err := fileOp.CreateFile(privatePemFile); err != nil {
777 return err
778 }
779 }
780
781 if err := fileOp.WriteFile(fullChainFile, strings.NewReader(websiteSSL.Pem), constant.DirPerm); err != nil {
782 return err
783 }
784 if err := fileOp.WriteFile(privatePemFile, strings.NewReader(websiteSSL.PrivateKey), constant.DirPerm); err != nil {
785 return err
786 }
787 return nil
788}
789
790func getHttpsPort(websiteID uint) map[int]struct{} {
791 domains, err := websiteDomainRepo.GetBy(websiteDomainRepo.WithWebsiteId(websiteID))

Callers 4

applySSLFunction · 0.85
UpdateSSLConfigFunction · 0.85
obtainSSLMethod · 0.85
ImportMasterSSLMethod · 0.85

Calls 5

StatMethod · 0.95
CreateDirMethod · 0.95
CreateFileMethod · 0.95
WriteFileMethod · 0.95
GetSitePathFunction · 0.85

Tested by

no test coverage detected