Skip to content

Commit

Permalink
feat: empty env for new projects
Browse files Browse the repository at this point in the history
  • Loading branch information
fiftin committed Mar 25, 2024
1 parent b2b2d8f commit c20a70e
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 34 deletions.
58 changes: 25 additions & 33 deletions api/projects/projects.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,21 +30,13 @@ func GetProjects(w http.ResponseWriter, r *http.Request) {
helpers.WriteJSON(w, http.StatusOK, projects)
}

func createDemoProject(projectID int, store db.Store) (err error) {
var noneKey db.AccessKey
func createDemoProject(projectID int, noneKeyID int, emptyEnvID int, store db.Store) (err error) {
var demoRepo db.Repository
var emptyEnv db.Environment

var buildInv db.Inventory
var devInv db.Inventory
var prodInv db.Inventory

noneKey, err = store.CreateAccessKey(db.AccessKey{
Name: "None",
Type: db.AccessKeyNone,
ProjectID: &projectID,
})

if err != nil {
return
}
Expand All @@ -67,17 +59,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
ProjectID: projectID,
GitURL: "https://github.com/semaphoreui/demo-project.git",
GitBranch: "main",
SSHKeyID: noneKey.ID,
})

if err != nil {
return
}

emptyEnv, err = store.CreateEnvironment(db.Environment{
Name: "Empty",
ProjectID: projectID,
JSON: "{}",
SSHKeyID: noneKeyID,
})

if err != nil {
Expand All @@ -89,7 +71,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
ProjectID: projectID,
Inventory: "[builder]\nlocalhost ansible_connection=local",
Type: "static",
SSHKeyID: &noneKey.ID,
SSHKeyID: &noneKeyID,
})

if err != nil {
Expand All @@ -101,7 +83,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
ProjectID: projectID,
Inventory: "invs/dev/hosts",
Type: "file",
SSHKeyID: &noneKey.ID,
SSHKeyID: &noneKeyID,
})

if err != nil {
Expand All @@ -113,7 +95,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
ProjectID: projectID,
Inventory: "invs/prod/hosts",
Type: "file",
SSHKeyID: &noneKey.ID,
SSHKeyID: &noneKeyID,
})

var desc string
Expand All @@ -129,7 +111,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
Description: &desc,
ProjectID: projectID,
InventoryID: prodInv.ID,
EnvironmentID: &emptyEnv.ID,
EnvironmentID: &emptyEnvID,
RepositoryID: demoRepo.ID,
})

Expand All @@ -146,7 +128,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
Type: db.TemplateBuild,
ProjectID: projectID,
InventoryID: buildInv.ID,
EnvironmentID: &emptyEnv.ID,
EnvironmentID: &emptyEnvID,
RepositoryID: demoRepo.ID,
StartVersion: &startVersion,
})
Expand All @@ -161,7 +143,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
Playbook: "deploy.yml",
ProjectID: projectID,
InventoryID: devInv.ID,
EnvironmentID: &emptyEnv.ID,
EnvironmentID: &emptyEnvID,
RepositoryID: demoRepo.ID,
BuildTemplateID: &buildTpl.ID,
Autorun: true,
Expand All @@ -178,7 +160,7 @@ func createDemoProject(projectID int, store db.Store) (err error) {
Playbook: "deploy.yml",
ProjectID: projectID,
InventoryID: prodInv.ID,
EnvironmentID: &emptyEnv.ID,
EnvironmentID: &emptyEnvID,
RepositoryID: demoRepo.ID,
BuildTemplateID: &buildTpl.ID,
VaultKeyID: &vaultKey.ID,
Expand Down Expand Up @@ -234,20 +216,30 @@ func AddProject(w http.ResponseWriter, r *http.Request) {
return
}

_, err = store.CreateInventory(db.Inventory{
Name: "None",
//_, err = store.CreateInventory(db.Inventory{
// Name: "None",
// ProjectID: body.ID,
// Type: "none",
// SSHKeyID: &noneKey.ID,
//})

if err != nil {
helpers.WriteError(w, err)
return
}

emptyEnv, err := store.CreateEnvironment(db.Environment{
Name: "Empty",
ProjectID: body.ID,
Type: "none",
SSHKeyID: &noneKey.ID,
JSON: "{}",
})

if err != nil {
helpers.WriteError(w, err)
return
}

if bodyWithDemo.Demo {
err = createDemoProject(body.ID, store)
err = createDemoProject(body.ID, noneKey.ID, emptyEnv.ID, store)

if err != nil {
helpers.WriteError(w, err)
Expand Down
2 changes: 1 addition & 1 deletion db/Inventory.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package db
type InventoryType string

const (
InventoryNone InventoryType = "none"
//InventoryNone InventoryType = "none"
InventoryStatic InventoryType = "static"
InventoryStaticYaml InventoryType = "static-yaml"
// InventoryFile means that it is path to the Ansible inventory file
Expand Down

0 comments on commit c20a70e

Please sign in to comment.