Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commita8d00d8

Browse files
committed
Move jobs to their own APIs
1 parentd2cbf36 commita8d00d8

26 files changed

+1071
-802
lines changed

‎cli/projectcreate.go‎

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,8 @@ func validateProjectVersionSource(cmd *cobra.Command, client *codersdk.Client, o
139139
returnnil,err
140140
}
141141

142-
job,err:=client.CreateProjectVersionImportProvisionerJob(cmd.Context(),organization.Name, coderd.CreateProjectImportJobRequest{
142+
before:=time.Now()
143+
job,err:=client.CreateProjectImportJob(cmd.Context(),organization.Name, coderd.CreateProjectImportJobRequest{
143144
StorageMethod:database.ProvisionerStorageMethodFile,
144145
StorageSource:resp.Hash,
145146
Provisioner:provisioner,
@@ -148,10 +149,8 @@ func validateProjectVersionSource(cmd *cobra.Command, client *codersdk.Client, o
148149
iferr!=nil {
149150
returnnil,err
150151
}
151-
152152
spin.Suffix=" Waiting for the import to complete..."
153-
154-
logs,err:=client.FollowProvisionerJobLogsAfter(cmd.Context(),organization.Name,job.ID, time.Time{})
153+
logs,err:=client.ProjectImportJobLogsAfter(cmd.Context(),organization.Name,job.ID,before)
155154
iferr!=nil {
156155
returnnil,err
157156
}
@@ -164,16 +163,15 @@ func validateProjectVersionSource(cmd *cobra.Command, client *codersdk.Client, o
164163
logBuffer=append(logBuffer,log)
165164
}
166165

167-
job,err=client.ProvisionerJob(cmd.Context(),organization.Name,job.ID)
166+
job,err=client.ProjectImportJob(cmd.Context(),organization.Name,job.ID)
168167
iferr!=nil {
169168
returnnil,err
170169
}
171-
172-
parameterSchemas,err:=client.ProvisionerJobParameterSchemas(cmd.Context(),organization.Name,job.ID)
170+
parameterSchemas,err:=client.ProjectImportJobSchemas(cmd.Context(),organization.Name,job.ID)
173171
iferr!=nil {
174172
returnnil,err
175173
}
176-
parameterValues,err:=client.ProvisionerJobParameterValues(cmd.Context(),organization.Name,job.ID)
174+
parameterValues,err:=client.ProjectImportJobParameters(cmd.Context(),organization.Name,job.ID)
177175
iferr!=nil {
178176
returnnil,err
179177
}
@@ -218,7 +216,7 @@ func validateProjectVersionSource(cmd *cobra.Command, client *codersdk.Client, o
218216

219217
_,_=fmt.Fprintf(cmd.OutOrStdout(),"%s Successfully imported project source!\n",color.HiGreenString("✓"))
220218

221-
resources,err:=client.ProvisionerJobResources(cmd.Context(),organization.Name,job.ID)
219+
resources,err:=client.ProjectImportJobResources(cmd.Context(),organization.Name,job.ID)
222220
iferr!=nil {
223221
returnnil,err
224222
}

‎cli/workspacecreate.go‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,15 @@ func workspaceCreate() *cobra.Command {
6464
iferr!=nil {
6565
returnerr
6666
}
67-
parameterSchemas,err:=client.ProvisionerJobParameterSchemas(cmd.Context(),organization.Name,projectVersion.ImportJobID)
67+
parameterSchemas,err:=client.ProjectImportJobSchemas(cmd.Context(),organization.Name,projectVersion.ImportJobID)
6868
iferr!=nil {
6969
returnerr
7070
}
71-
parameterValues,err:=client.ProvisionerJobParameterValues(cmd.Context(),organization.Name,projectVersion.ImportJobID)
71+
parameterValues,err:=client.ProjectImportJobParameters(cmd.Context(),organization.Name,projectVersion.ImportJobID)
7272
iferr!=nil {
7373
returnerr
7474
}
75-
resources,err:=client.ProvisionerJobResources(cmd.Context(),organization.Name,projectVersion.ImportJobID)
75+
resources,err:=client.ProjectImportJobResources(cmd.Context(),organization.Name,projectVersion.ImportJobID)
7676
iferr!=nil {
7777
returnerr
7878
}
@@ -108,7 +108,7 @@ func workspaceCreate() *cobra.Command {
108108
returnerr
109109
}
110110

111-
logs,err:=client.FollowProvisionerJobLogsAfter(cmd.Context(),organization.Name,history.ProvisionJobID, time.Time{})
111+
logs,err:=client.WorkspaceProvisionJobLogsAfter(cmd.Context(),organization.Name,history.ProvisionJobID, time.Time{})
112112
iferr!=nil {
113113
returnerr
114114
}

‎cli/workspacecreate_test.go‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ func TestWorkspaceCreate(t *testing.T) {
1717
client:=coderdtest.New(t)
1818
user:=coderdtest.CreateInitialUser(t,client)
1919
_=coderdtest.NewProvisionerDaemon(t,client)
20-
job:=coderdtest.CreateProjectImportProvisionerJob(t,client,user.Organization,&echo.Responses{
20+
job:=coderdtest.CreateProjectImportJob(t,client,user.Organization,&echo.Responses{
2121
Parse:echo.ParseComplete,
2222
Provision: []*proto.Provision_Response{{
2323
Type:&proto.Provision_Response_Complete{
@@ -30,7 +30,7 @@ func TestWorkspaceCreate(t *testing.T) {
3030
},
3131
}},
3232
})
33-
coderdtest.AwaitProvisionerJob(t,client,user.Organization,job.ID)
33+
coderdtest.AwaitProjectImportJob(t,client,user.Organization,job.ID)
3434
project:=coderdtest.CreateProject(t,client,user.Organization,job.ID)
3535
cmd,root:=clitest.New(t,"workspaces","create",project.Name)
3636
clitest.SetupConfig(t,client,root)

‎coderd/coderd.go‎

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -107,27 +107,38 @@ func New(options *Options) http.Handler {
107107
r.Post("/",api.postFiles)
108108
})
109109

110-
r.Route("/provisioners",func(r chi.Router) {
111-
r.Route("/daemons",func(r chi.Router) {
112-
r.Get("/",api.provisionerDaemons)
113-
r.Get("/serve",api.provisionerDaemonsServe)
110+
r.Route("/projectimport/{organization}",func(r chi.Router) {
111+
r.Use(
112+
httpmw.ExtractAPIKey(options.Database,nil),
113+
httpmw.ExtractOrganizationParam(options.Database),
114+
)
115+
r.Post("/",api.postProjectImportByOrganization)
116+
r.Route("/{provisionerjob}",func(r chi.Router) {
117+
r.Use(httpmw.ExtractProvisionerJobParam(options.Database))
118+
r.Get("/",api.provisionerJobByID)
119+
r.Get("/schemas",api.projectImportJobSchemasByID)
120+
r.Get("/parameters",api.projectImportJobParametersByID)
121+
r.Get("/resources",api.projectImportJobResourcesByID)
122+
r.Get("/logs",api.provisionerJobLogsByID)
114123
})
115-
r.Route("/jobs/{organization}",func(r chi.Router) {
116-
r.Use(
117-
httpmw.ExtractAPIKey(options.Database,nil),
118-
httpmw.ExtractOrganizationParam(options.Database),
119-
)
120-
r.Post("/import",api.postProvisionerImportJobByOrganization)
121-
r.Route("/{provisionerjob}",func(r chi.Router) {
122-
r.Use(httpmw.ExtractProvisionerJobParam(options.Database))
123-
r.Get("/",api.provisionerJobByOrganization)
124-
r.Get("/schemas",api.provisionerJobParameterSchemasByID)
125-
r.Get("/computed",api.provisionerJobComputedParametersByID)
126-
r.Get("/resources",api.provisionerJobResourcesByID)
127-
r.Get("/logs",api.provisionerJobLogsByID)
128-
})
124+
})
125+
126+
r.Route("/workspaceprovision/{organization}",func(r chi.Router) {
127+
r.Use(
128+
httpmw.ExtractAPIKey(options.Database,nil),
129+
httpmw.ExtractOrganizationParam(options.Database),
130+
)
131+
r.Route("/{provisionerjob}",func(r chi.Router) {
132+
r.Use(httpmw.ExtractProvisionerJobParam(options.Database))
133+
r.Get("/",api.provisionerJobByID)
134+
r.Get("/logs",api.provisionerJobLogsByID)
129135
})
130136
})
137+
138+
r.Route("/provisioners/daemons",func(r chi.Router) {
139+
r.Get("/",api.provisionerDaemons)
140+
r.Get("/serve",api.provisionerDaemonsServe)
141+
})
131142
})
132143
r.NotFound(site.Handler(options.Logger).ServeHTTP)
133144
returnr

‎coderd/coderdtest/coderdtest.go‎

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ import (
2828
"github.com/coder/coder/provisionersdk/proto"
2929
)
3030

31-
// New constructsa new coderdtestinstance. This returned Server
32-
//should contain no side-effects.
31+
// New constructsan in-memory coderd instance and returns
32+
//the connected client.
3333
funcNew(t*testing.T)*codersdk.Client {
3434
// This can be hotswapped for a live database instance.
3535
db:=databasefake.New()
@@ -121,15 +121,15 @@ func CreateInitialUser(t *testing.T, client *codersdk.Client) coderd.CreateIniti
121121
returnreq
122122
}
123123

124-
//CreateProjectImportProvisionerJob creates a project import provisioner job
124+
//CreateProjectImportJob creates a project import provisioner job
125125
// with the responses provided. It uses the "echo" provisioner for compatibility
126126
// with testing.
127-
funcCreateProjectImportProvisionerJob(t*testing.T,client*codersdk.Client,organizationstring,res*echo.Responses) coderd.ProvisionerJob {
127+
funcCreateProjectImportJob(t*testing.T,client*codersdk.Client,organizationstring,res*echo.Responses) coderd.ProvisionerJob {
128128
data,err:=echo.Tar(res)
129129
require.NoError(t,err)
130130
file,err:=client.UploadFile(context.Background(),codersdk.ContentTypeTar,data)
131131
require.NoError(t,err)
132-
job,err:=client.CreateProjectVersionImportProvisionerJob(context.Background(),organization, coderd.CreateProjectImportJobRequest{
132+
job,err:=client.CreateProjectImportJob(context.Background(),organization, coderd.CreateProjectImportJobRequest{
133133
StorageSource:file.Hash,
134134
StorageMethod:database.ProvisionerStorageMethodFile,
135135
Provisioner:database.ProvisionerTypeEcho,
@@ -149,12 +149,24 @@ func CreateProject(t *testing.T, client *codersdk.Client, organization string, j
149149
returnproject
150150
}
151151

152-
//AwaitProvisionerJob awaits fora job to reach completed status.
153-
funcAwaitProvisionerJob(t*testing.T,client*codersdk.Client,organizationstring,job uuid.UUID) coderd.ProvisionerJob {
152+
//AwaitProjectImportJob awaits foran import job to reach completed status.
153+
funcAwaitProjectImportJob(t*testing.T,client*codersdk.Client,organizationstring,job uuid.UUID) coderd.ProvisionerJob {
154154
varprovisionerJob coderd.ProvisionerJob
155155
require.Eventually(t,func()bool {
156156
varerrerror
157-
provisionerJob,err=client.ProvisionerJob(context.Background(),organization,job)
157+
provisionerJob,err=client.ProjectImportJob(context.Background(),organization,job)
158+
require.NoError(t,err)
159+
returnprovisionerJob.Status.Completed()
160+
},3*time.Second,25*time.Millisecond)
161+
returnprovisionerJob
162+
}
163+
164+
// AwaitWorkspaceProvisionJob awaits for a workspace provision job to reach completed status.
165+
funcAwaitWorkspaceProvisionJob(t*testing.T,client*codersdk.Client,organizationstring,job uuid.UUID) coderd.ProvisionerJob {
166+
varprovisionerJob coderd.ProvisionerJob
167+
require.Eventually(t,func()bool {
168+
varerrerror
169+
provisionerJob,err=client.WorkspaceProvisionJob(context.Background(),organization,job)
158170
require.NoError(t,err)
159171
returnprovisionerJob.Status.Completed()
160172
},3*time.Second,25*time.Millisecond)

‎coderd/coderdtest/coderdtest_test.go‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ func TestNew(t *testing.T) {
2222
client:=coderdtest.New(t)
2323
user:=coderdtest.CreateInitialUser(t,client)
2424
closer:=coderdtest.NewProvisionerDaemon(t,client)
25-
job:=coderdtest.CreateProjectImportProvisionerJob(t,client,user.Organization,nil)
26-
coderdtest.AwaitProvisionerJob(t,client,user.Organization,job.ID)
25+
job:=coderdtest.CreateProjectImportJob(t,client,user.Organization,nil)
26+
coderdtest.AwaitProjectImportJob(t,client,user.Organization,job.ID)
2727
project:=coderdtest.CreateProject(t,client,user.Organization,job.ID)
2828
workspace:=coderdtest.CreateWorkspace(t,client,"me",project.ID)
2929
history,err:=client.CreateWorkspaceHistory(context.Background(),"me",workspace.Name, coderd.CreateWorkspaceHistoryRequest{
3030
ProjectVersionID:project.ActiveVersionID,
3131
Transition:database.WorkspaceTransitionStart,
3232
})
3333
require.NoError(t,err)
34-
coderdtest.AwaitProvisionerJob(t,client,user.Organization,history.ProvisionJobID)
34+
coderdtest.AwaitWorkspaceProvisionJob(t,client,user.Organization,history.ProvisionJobID)
3535
closer.Close()
3636
}

‎coderd/parameters.go‎

Lines changed: 0 additions & 109 deletions
This file was deleted.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp