Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| de37a56db6 | |||
| 33f870dac9 | |||
| 03c9417154 |
@@ -1615,6 +1615,7 @@ func provisionerJobTiming(t testing.TB, db database.Store, seed database.Provisi
|
||||
StartedAt: []time.Time{takeFirst(seed.StartedAt, dbtime.Now())},
|
||||
EndedAt: []time.Time{takeFirst(seed.EndedAt, dbtime.Now())},
|
||||
Stage: []database.ProvisionerJobTimingStage{takeFirst(seed.Stage, database.ProvisionerJobTimingStageInit)},
|
||||
StageSeq: []int32{seed.StageSeq},
|
||||
Source: []string{takeFirst(seed.Source, "source")},
|
||||
Action: []string{takeFirst(seed.Action, "action")},
|
||||
Resource: []string{takeFirst(seed.Resource, "resource")},
|
||||
|
||||
Generated
+4
-1
@@ -1688,9 +1688,12 @@ CREATE TABLE provisioner_job_timings (
|
||||
stage provisioner_job_timing_stage NOT NULL,
|
||||
source text NOT NULL,
|
||||
action text NOT NULL,
|
||||
resource text NOT NULL
|
||||
resource text NOT NULL,
|
||||
stage_seq integer DEFAULT 0 NOT NULL
|
||||
);
|
||||
|
||||
COMMENT ON COLUMN provisioner_job_timings.stage_seq IS 'Distinguish repeated runs of the same stage within a single build job.';
|
||||
|
||||
CREATE TABLE provisioner_jobs (
|
||||
id uuid NOT NULL,
|
||||
created_at timestamp with time zone NOT NULL,
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
ALTER TABLE ONLY
|
||||
provisioner_job_timings
|
||||
DROP COLUMN IF EXISTS stage_seq;
|
||||
@@ -0,0 +1,7 @@
|
||||
ALTER TABLE ONLY
|
||||
provisioner_job_timings
|
||||
ADD COLUMN stage_seq integer NOT NULL DEFAULT 0;
|
||||
|
||||
COMMENT ON COLUMN
|
||||
provisioner_job_timings.stage_seq IS
|
||||
'Distinguish repeated runs of the same stage within a single build job.';
|
||||
@@ -4134,6 +4134,8 @@ type ProvisionerJobTiming struct {
|
||||
Source string `db:"source" json:"source"`
|
||||
Action string `db:"action" json:"action"`
|
||||
Resource string `db:"resource" json:"resource"`
|
||||
// Distinguish repeated runs of the same stage within a single build job.
|
||||
StageSeq int32 `db:"stage_seq" json:"stage_seq"`
|
||||
}
|
||||
|
||||
type ProvisionerKey struct {
|
||||
|
||||
@@ -10062,7 +10062,7 @@ func (q *sqlQuerier) GetProvisionerJobByIDWithLock(ctx context.Context, id uuid.
|
||||
}
|
||||
|
||||
const getProvisionerJobTimingsByJobID = `-- name: GetProvisionerJobTimingsByJobID :many
|
||||
SELECT job_id, started_at, ended_at, stage, source, action, resource FROM provisioner_job_timings
|
||||
SELECT job_id, started_at, ended_at, stage, source, action, resource, stage_seq FROM provisioner_job_timings
|
||||
WHERE job_id = $1
|
||||
ORDER BY started_at ASC
|
||||
`
|
||||
@@ -10084,6 +10084,7 @@ func (q *sqlQuerier) GetProvisionerJobTimingsByJobID(ctx context.Context, jobID
|
||||
&i.Source,
|
||||
&i.Action,
|
||||
&i.Resource,
|
||||
&i.StageSeq,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -10676,7 +10677,7 @@ func (q *sqlQuerier) InsertProvisionerJob(ctx context.Context, arg InsertProvisi
|
||||
}
|
||||
|
||||
const insertProvisionerJobTimings = `-- name: InsertProvisionerJobTimings :many
|
||||
INSERT INTO provisioner_job_timings (job_id, started_at, ended_at, stage, source, action, resource)
|
||||
INSERT INTO provisioner_job_timings (job_id, started_at, ended_at, stage, source, action, resource, stage_seq)
|
||||
SELECT
|
||||
$1::uuid AS provisioner_job_id,
|
||||
unnest($2::timestamptz[]),
|
||||
@@ -10684,8 +10685,9 @@ SELECT
|
||||
unnest($4::provisioner_job_timing_stage[]),
|
||||
unnest($5::text[]),
|
||||
unnest($6::text[]),
|
||||
unnest($7::text[])
|
||||
RETURNING job_id, started_at, ended_at, stage, source, action, resource
|
||||
unnest($7::text[]),
|
||||
unnest($8::integer[])
|
||||
RETURNING job_id, started_at, ended_at, stage, source, action, resource, stage_seq
|
||||
`
|
||||
|
||||
type InsertProvisionerJobTimingsParams struct {
|
||||
@@ -10696,6 +10698,7 @@ type InsertProvisionerJobTimingsParams struct {
|
||||
Source []string `db:"source" json:"source"`
|
||||
Action []string `db:"action" json:"action"`
|
||||
Resource []string `db:"resource" json:"resource"`
|
||||
StageSeq []int32 `db:"stage_seq" json:"stage_seq"`
|
||||
}
|
||||
|
||||
func (q *sqlQuerier) InsertProvisionerJobTimings(ctx context.Context, arg InsertProvisionerJobTimingsParams) ([]ProvisionerJobTiming, error) {
|
||||
@@ -10707,6 +10710,7 @@ func (q *sqlQuerier) InsertProvisionerJobTimings(ctx context.Context, arg Insert
|
||||
pq.Array(arg.Source),
|
||||
pq.Array(arg.Action),
|
||||
pq.Array(arg.Resource),
|
||||
pq.Array(arg.StageSeq),
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -10723,6 +10727,7 @@ func (q *sqlQuerier) InsertProvisionerJobTimings(ctx context.Context, arg Insert
|
||||
&i.Source,
|
||||
&i.Action,
|
||||
&i.Resource,
|
||||
&i.StageSeq,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -329,7 +329,7 @@ ORDER BY random()
|
||||
LIMIT @max_jobs;
|
||||
|
||||
-- name: InsertProvisionerJobTimings :many
|
||||
INSERT INTO provisioner_job_timings (job_id, started_at, ended_at, stage, source, action, resource)
|
||||
INSERT INTO provisioner_job_timings (job_id, started_at, ended_at, stage, source, action, resource, stage_seq)
|
||||
SELECT
|
||||
@job_id::uuid AS provisioner_job_id,
|
||||
unnest(@started_at::timestamptz[]),
|
||||
@@ -337,7 +337,8 @@ SELECT
|
||||
unnest(@stage::provisioner_job_timing_stage[]),
|
||||
unnest(@source::text[]),
|
||||
unnest(@action::text[]),
|
||||
unnest(@resource::text[])
|
||||
unnest(@resource::text[]),
|
||||
unnest(@stage_seq::integer[])
|
||||
RETURNING *;
|
||||
|
||||
-- name: GetProvisionerJobTimingsByJobID :many
|
||||
|
||||
@@ -2182,6 +2182,7 @@ func (s *server) completeWorkspaceBuildJob(ctx context.Context, job database.Pro
|
||||
}
|
||||
|
||||
params.Stage = append(params.Stage, stg)
|
||||
params.StageSeq = append(params.StageSeq, t.StageSeq)
|
||||
params.Source = append(params.Source, t.Source)
|
||||
params.Resource = append(params.Resource, t.Resource)
|
||||
params.Action = append(params.Action, t.Action)
|
||||
|
||||
@@ -1295,13 +1295,14 @@ func (api *API) buildTimings(ctx context.Context, build database.WorkspaceBuild)
|
||||
}
|
||||
|
||||
res.ProvisionerTimings = append(res.ProvisionerTimings, codersdk.ProvisionerTiming{
|
||||
JobID: t.JobID,
|
||||
Stage: codersdk.TimingStage(t.Stage),
|
||||
Source: t.Source,
|
||||
Action: t.Action,
|
||||
Resource: t.Resource,
|
||||
StartedAt: t.StartedAt,
|
||||
EndedAt: t.EndedAt,
|
||||
JobID: t.JobID,
|
||||
Stage: codersdk.TimingStage(t.Stage),
|
||||
StageSequence: t.StageSeq,
|
||||
Source: t.Source,
|
||||
Action: t.Action,
|
||||
Resource: t.Resource,
|
||||
StartedAt: t.StartedAt,
|
||||
EndedAt: t.EndedAt,
|
||||
})
|
||||
}
|
||||
for _, t := range agentScriptTimings {
|
||||
|
||||
@@ -231,13 +231,14 @@ const (
|
||||
)
|
||||
|
||||
type ProvisionerTiming struct {
|
||||
JobID uuid.UUID `json:"job_id" format:"uuid"`
|
||||
StartedAt time.Time `json:"started_at" format:"date-time"`
|
||||
EndedAt time.Time `json:"ended_at" format:"date-time"`
|
||||
Stage TimingStage `json:"stage"`
|
||||
Source string `json:"source"`
|
||||
Action string `json:"action"`
|
||||
Resource string `json:"resource"`
|
||||
JobID uuid.UUID `json:"job_id" format:"uuid"`
|
||||
StartedAt time.Time `json:"started_at" format:"date-time"`
|
||||
EndedAt time.Time `json:"ended_at" format:"date-time"`
|
||||
Stage TimingStage `json:"stage"`
|
||||
StageSequence int32 `json:"stage_sequence"`
|
||||
Source string `json:"source"`
|
||||
Action string `json:"action"`
|
||||
Resource string `json:"resource"`
|
||||
}
|
||||
|
||||
type AgentScriptTiming struct {
|
||||
|
||||
@@ -325,7 +325,7 @@ func (e *executor) plan(ctx, killCtx context.Context, env, vars []string, logr l
|
||||
<-doneErr
|
||||
}()
|
||||
|
||||
endStage := e.timings.startStage(database.ProvisionerJobTimingStagePlan)
|
||||
endStage := e.timings.startStage(database.ProvisionerJobTimingStagePlan, 0)
|
||||
err := e.execWriteOutput(ctx, killCtx, args, env, outWriter, errWriter)
|
||||
endStage(err)
|
||||
if err != nil {
|
||||
@@ -333,12 +333,10 @@ func (e *executor) plan(ctx, killCtx context.Context, env, vars []string, logr l
|
||||
}
|
||||
|
||||
// Capture the duration of the call to `terraform graph`.
|
||||
graphTimings := newTimingAggregator(database.ProvisionerJobTimingStageGraph)
|
||||
graphTimings.ingest(createGraphTimingsEvent(timingGraphStart))
|
||||
|
||||
endGraph := e.timings.startStage(database.ProvisionerJobTimingStageGraph, 0)
|
||||
state, plan, err := e.planResources(ctx, killCtx, planfilePath)
|
||||
endGraph(err)
|
||||
if err != nil {
|
||||
graphTimings.ingest(createGraphTimingsEvent(timingGraphErrored))
|
||||
return nil, xerrors.Errorf("plan resources: %w", err)
|
||||
}
|
||||
planJSON, err := json.Marshal(plan)
|
||||
@@ -346,8 +344,6 @@ func (e *executor) plan(ctx, killCtx context.Context, env, vars []string, logr l
|
||||
return nil, xerrors.Errorf("marshal plan: %w", err)
|
||||
}
|
||||
|
||||
graphTimings.ingest(createGraphTimingsEvent(timingGraphComplete))
|
||||
|
||||
var moduleFiles []byte
|
||||
// Skipping modules archiving is useful if the caller does not need it, eg during
|
||||
// a workspace build. This removes some added costs of sending the modules
|
||||
@@ -390,7 +386,7 @@ func (e *executor) plan(ctx, killCtx context.Context, env, vars []string, logr l
|
||||
Parameters: state.Parameters,
|
||||
Resources: state.Resources,
|
||||
ExternalAuthProviders: state.ExternalAuthProviders,
|
||||
Timings: append(e.timings.aggregate(), graphTimings.aggregate()...),
|
||||
Timings: e.timings.aggregate(),
|
||||
Presets: state.Presets,
|
||||
Plan: planJSON,
|
||||
ResourceReplacements: resReps,
|
||||
@@ -599,7 +595,7 @@ func (e *executor) apply(
|
||||
}()
|
||||
|
||||
// `terraform apply`
|
||||
endStage := e.timings.startStage(database.ProvisionerJobTimingStageApply)
|
||||
endStage := e.timings.startStage(database.ProvisionerJobTimingStageApply, 0)
|
||||
err := e.execWriteOutput(ctx, killCtx, args, env, outWriter, errWriter)
|
||||
endStage(err)
|
||||
if err != nil {
|
||||
@@ -607,10 +603,14 @@ func (e *executor) apply(
|
||||
}
|
||||
|
||||
// `terraform show` & `terraform graph`
|
||||
// The sequence number is `1` as `graph` has already been called during `plan`. (the 0th stage)
|
||||
endGraph := e.timings.startStage(database.ProvisionerJobTimingStageGraph, 1)
|
||||
state, err := e.stateResources(ctx, killCtx)
|
||||
endGraph(err)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
statefilePath := e.files.StateFilePath()
|
||||
stateContent, err := os.ReadFile(statefilePath)
|
||||
if err != nil {
|
||||
|
||||
@@ -109,8 +109,8 @@ func (s *server) Plan(
|
||||
|
||||
// The JSON output of `terraform init` doesn't include discrete fields for capturing timings of each plugin,
|
||||
// so we capture the whole init process.
|
||||
initTimings := newTimingAggregator(database.ProvisionerJobTimingStageInit)
|
||||
endStage := initTimings.startStage(database.ProvisionerJobTimingStageInit)
|
||||
initTimings := newTimingAggregator(database.ProvisionerJobTimingStageInit, 0)
|
||||
endStage := initTimings.startStage(database.ProvisionerJobTimingStageInit, 0)
|
||||
|
||||
err = e.init(ctx, killCtx, sess)
|
||||
endStage(err)
|
||||
|
||||
@@ -170,6 +170,6 @@ func (s *server) executor(files tfpath.Layouter, stage database.ProvisionerJobTi
|
||||
cliConfigPath: s.cliConfigPath,
|
||||
files: files,
|
||||
logger: s.logger.Named("executor"),
|
||||
timings: newTimingAggregator(stage),
|
||||
timings: newTimingAggregator(stage, 0),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,8 @@ const (
|
||||
)
|
||||
|
||||
type timingAggregator struct {
|
||||
stage database.ProvisionerJobTimingStage
|
||||
stage database.ProvisionerJobTimingStage
|
||||
stageSequence int32
|
||||
|
||||
// Protects the stateLookup map.
|
||||
lookupMu sync.Mutex
|
||||
@@ -88,16 +89,18 @@ type timingSpan struct {
|
||||
messageCode initMessageCode
|
||||
start, end time.Time
|
||||
stage database.ProvisionerJobTimingStage
|
||||
stageSeq int32
|
||||
action, provider, resource string
|
||||
state proto.TimingState
|
||||
}
|
||||
|
||||
// newTimingAggregator creates a new aggregator which measures the duration of resource init/plan/apply actions; stage
|
||||
// represents the stage of provisioning the timings are occurring within.
|
||||
func newTimingAggregator(stage database.ProvisionerJobTimingStage) *timingAggregator {
|
||||
func newTimingAggregator(stage database.ProvisionerJobTimingStage, seq int32) *timingAggregator {
|
||||
return &timingAggregator{
|
||||
stage: stage,
|
||||
stateLookup: make(map[uint64]*timingSpan),
|
||||
stage: stage,
|
||||
stageSequence: seq,
|
||||
stateLookup: make(map[uint64]*timingSpan),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,7 +112,12 @@ func (t *timingAggregator) ingest(ts time.Time, s *timingSpan) {
|
||||
return
|
||||
}
|
||||
|
||||
s.stage = t.stage
|
||||
// Only set the stage if it hasn't already been set on the span.
|
||||
// Explicitly set stage takes precedence.
|
||||
if s.stage == "" {
|
||||
s.stage = t.stage
|
||||
s.stageSeq = t.stageSequence
|
||||
}
|
||||
ts = dbtime.Time(ts.UTC())
|
||||
|
||||
switch s.kind {
|
||||
@@ -184,13 +192,14 @@ func (t *timingAggregator) aggregate() []*proto.Timing {
|
||||
// should be called to mark the end of the stage. This is used to measure a
|
||||
// stage's total duration across all it's discrete events and unmeasured
|
||||
// overhead/events.
|
||||
func (t *timingAggregator) startStage(stage database.ProvisionerJobTimingStage) (end func(err error)) {
|
||||
func (t *timingAggregator) startStage(stage database.ProvisionerJobTimingStage, seq int32) (end func(err error)) {
|
||||
ts := timingSpan{
|
||||
kind: timingStageStart,
|
||||
stage: stage,
|
||||
resource: "coder_stage_" + string(stage),
|
||||
action: "terraform",
|
||||
provider: "coder",
|
||||
stageSeq: seq,
|
||||
}
|
||||
endTs := ts
|
||||
t.ingest(dbtime.Now(), &ts)
|
||||
@@ -279,6 +288,7 @@ func (e *timingSpan) toProto() *proto.Timing {
|
||||
Source: e.provider,
|
||||
Resource: e.resource,
|
||||
State: e.state,
|
||||
StageSeq: e.stageSeq,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@ func TestAggregation(t *testing.T) {
|
||||
require.Truef(t, stage.Valid(), "%q is not a valid stage name; acceptable values: %v",
|
||||
file.Name, database.AllProvisionerJobTimingStageValues())
|
||||
|
||||
agg := newTimingAggregator(stage)
|
||||
agg := newTimingAggregator(stage, 0)
|
||||
ingestAllSpans(t, file.Data, agg)
|
||||
actualTimings = append(actualTimings, agg.aggregate()...)
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// Code generated by protoc-gen-go-drpc. DO NOT EDIT.
|
||||
// protoc-gen-go-drpc version: v0.0.34
|
||||
// protoc-gen-go-drpc version: (devel)
|
||||
// source: provisionerd/proto/provisionerd.proto
|
||||
|
||||
package proto
|
||||
|
||||
@@ -62,9 +62,12 @@ import "github.com/coder/coder/v2/apiversion"
|
||||
// - Added new field `template_version_id` to `provisioner.Metadata`
|
||||
// - Added new field `exp_reuse_terraform_workspace` to `provisioner.Job.WorkspaceBuild`
|
||||
// - Added fields `template_version_id`, `template_id`, and `exp_reuse_terraform_workspace` to `provisioner.Config`
|
||||
//
|
||||
// API v1.13:
|
||||
// - Added new field `stage_seq` to `Timing` to distinguish repeated stages
|
||||
const (
|
||||
CurrentMajor = 1
|
||||
CurrentMinor = 12
|
||||
CurrentMinor = 13
|
||||
)
|
||||
|
||||
// CurrentVersion is the current provisionerd API version.
|
||||
|
||||
Generated
+118
-104
@@ -3759,6 +3759,11 @@ type Timing struct {
|
||||
Resource string `protobuf:"bytes,5,opt,name=resource,proto3" json:"resource,omitempty"`
|
||||
Stage string `protobuf:"bytes,6,opt,name=stage,proto3" json:"stage,omitempty"`
|
||||
State TimingState `protobuf:"varint,7,opt,name=state,proto3,enum=provisioner.TimingState" json:"state,omitempty"`
|
||||
// stage_que distinguishes repeated runs of the same stage.
|
||||
// 0 is the first occurrence, 1 is the second, etc.
|
||||
// Repeated stages are not ideal, but they do exist and should be known
|
||||
// to be unique by this field.
|
||||
StageSeq int32 `protobuf:"varint,8,opt,name=stage_seq,json=stageSeq,proto3" json:"stage_seq,omitempty"`
|
||||
}
|
||||
|
||||
func (x *Timing) Reset() {
|
||||
@@ -3842,6 +3847,13 @@ func (x *Timing) GetState() TimingState {
|
||||
return TimingState_STARTED
|
||||
}
|
||||
|
||||
func (x *Timing) GetStageSeq() int32 {
|
||||
if x != nil {
|
||||
return x.StageSeq
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
// CancelRequest requests that the previous request be canceled gracefully.
|
||||
type CancelRequest struct {
|
||||
state protoimpl.MessageState
|
||||
@@ -5026,8 +5038,8 @@ var file_provisionersdk_proto_provisioner_proto_rawDesc = []byte{
|
||||
0x69, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x2e,
|
||||
0x0a, 0x08, 0x61, 0x69, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
|
||||
0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x41,
|
||||
0x49, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x07, 0x61, 0x69, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x22, 0xfa,
|
||||
0x01, 0x0a, 0x06, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x05, 0x73, 0x74, 0x61,
|
||||
0x49, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x07, 0x61, 0x69, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x22, 0x97,
|
||||
0x02, 0x0a, 0x06, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x05, 0x73, 0x74, 0x61,
|
||||
0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
|
||||
0x74, 0x61, 0x6d, 0x70, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x03, 0x65,
|
||||
@@ -5042,108 +5054,110 @@ var file_provisionersdk_proto_provisioner_proto_rawDesc = []byte{
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x73,
|
||||
0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x53,
|
||||
0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x0f, 0x0a, 0x0d, 0x43,
|
||||
0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x8c, 0x02, 0x0a,
|
||||
0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66,
|
||||
0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52,
|
||||
0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x31, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x73, 0x65,
|
||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
|
||||
0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x48, 0x00, 0x52, 0x05, 0x70, 0x61, 0x72, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x70, 0x6c,
|
||||
0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x48, 0x00, 0x52, 0x04, 0x70, 0x6c, 0x61, 0x6e, 0x12, 0x31, 0x0a, 0x05, 0x61, 0x70,
|
||||
0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x76,
|
||||
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x34, 0x0a,
|
||||
0x06, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
|
||||
0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x43, 0x61, 0x6e, 0x63,
|
||||
0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x63, 0x61, 0x6e,
|
||||
0x63, 0x65, 0x6c, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x08,
|
||||
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
|
||||
0x6e, 0x65, 0x72, 0x2e, 0x4c, 0x6f, 0x67, 0x48, 0x00, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x12, 0x32,
|
||||
0x0a, 0x05, 0x70, 0x61, 0x72, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
|
||||
0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x73,
|
||||
0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x00, 0x52, 0x05, 0x70, 0x61, 0x72,
|
||||
0x73, 0x65, 0x12, 0x2f, 0x0a, 0x04, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
|
||||
0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50,
|
||||
0x6c, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x00, 0x52, 0x04, 0x70,
|
||||
0x6c, 0x61, 0x6e, 0x12, 0x32, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01,
|
||||
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72,
|
||||
0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x00,
|
||||
0x52, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x3a, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f,
|
||||
0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70,
|
||||
0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x55,
|
||||
0x70, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c,
|
||||
0x6f, 0x61, 0x64, 0x12, 0x3a, 0x0a, 0x0b, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x70, 0x69, 0x65,
|
||||
0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x50, 0x69, 0x65, 0x63,
|
||||
0x65, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x50, 0x69, 0x65, 0x63, 0x65, 0x42,
|
||||
0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x9c, 0x01, 0x0a, 0x0a, 0x44, 0x61, 0x74, 0x61,
|
||||
0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x3c, 0x0a, 0x0b, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64,
|
||||
0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x70, 0x72,
|
||||
0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70,
|
||||
0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64,
|
||||
0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x68, 0x61, 0x73,
|
||||
0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x48, 0x61, 0x73,
|
||||
0x68, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03,
|
||||
0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16,
|
||||
0x0a, 0x06, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
|
||||
0x63, 0x68, 0x75, 0x6e, 0x6b, 0x73, 0x22, 0x67, 0x0a, 0x0a, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x50,
|
||||
0x69, 0x65, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01,
|
||||
0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x75, 0x6c, 0x6c,
|
||||
0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
|
||||
0x52, 0x0c, 0x66, 0x75, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1f,
|
||||
0x0a, 0x0b, 0x70, 0x69, 0x65, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20,
|
||||
0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x69, 0x65, 0x63, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x2a,
|
||||
0xa8, 0x01, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x46, 0x6f, 0x72,
|
||||
0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54,
|
||||
0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52,
|
||||
0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x41, 0x44, 0x49, 0x4f, 0x10, 0x02, 0x12, 0x0c, 0x0a,
|
||||
0x08, 0x44, 0x52, 0x4f, 0x50, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x49,
|
||||
0x4e, 0x50, 0x55, 0x54, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x45, 0x58, 0x54, 0x41, 0x52,
|
||||
0x45, 0x41, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x4c, 0x49, 0x44, 0x45, 0x52, 0x10, 0x06,
|
||||
0x12, 0x0c, 0x0a, 0x08, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x42, 0x4f, 0x58, 0x10, 0x07, 0x12, 0x0a,
|
||||
0x0a, 0x06, 0x53, 0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x41,
|
||||
0x47, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x10, 0x09, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x4c,
|
||||
0x54, 0x49, 0x53, 0x45, 0x4c, 0x45, 0x43, 0x54, 0x10, 0x0a, 0x2a, 0x3f, 0x0a, 0x08, 0x4c, 0x6f,
|
||||
0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10,
|
||||
0x00, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04,
|
||||
0x49, 0x4e, 0x46, 0x4f, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x57, 0x41, 0x52, 0x4e, 0x10, 0x03,
|
||||
0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x2a, 0x3b, 0x0a, 0x0f, 0x41,
|
||||
0x70, 0x70, 0x53, 0x68, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x09,
|
||||
0x0a, 0x05, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x55, 0x54,
|
||||
0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06,
|
||||
0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, 0x02, 0x2a, 0x35, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x4f,
|
||||
0x70, 0x65, 0x6e, 0x49, 0x6e, 0x12, 0x0e, 0x0a, 0x06, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10,
|
||||
0x00, 0x1a, 0x02, 0x08, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x4c, 0x49, 0x4d, 0x5f, 0x57, 0x49,
|
||||
0x4e, 0x44, 0x4f, 0x57, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x41, 0x42, 0x10, 0x02, 0x2a,
|
||||
0x37, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e,
|
||||
0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10,
|
||||
0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44,
|
||||
0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0x02, 0x2a, 0x3e, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x62,
|
||||
0x75, 0x69, 0x6c, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x42, 0x75, 0x69,
|
||||
0x6c, 0x64, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10,
|
||||
0x00, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a,
|
||||
0x05, 0x43, 0x4c, 0x41, 0x49, 0x4d, 0x10, 0x02, 0x2a, 0x35, 0x0a, 0x0b, 0x54, 0x69, 0x6d, 0x69,
|
||||
0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x54, 0x41, 0x52, 0x54,
|
||||
0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45,
|
||||
0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x2a,
|
||||
0x47, 0x0a, 0x0e, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70,
|
||||
0x65, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x50, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45,
|
||||
0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x55, 0x50,
|
||||
0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45,
|
||||
0x5f, 0x46, 0x49, 0x4c, 0x45, 0x53, 0x10, 0x01, 0x32, 0x49, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x76,
|
||||
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x07, 0x53, 0x65, 0x73, 0x73, 0x69,
|
||||
0x6f, 0x6e, 0x12, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72,
|
||||
0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28,
|
||||
0x01, 0x30, 0x01, 0x42, 0x30, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
|
||||
0x6d, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2f, 0x76, 0x32,
|
||||
0x2f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x64, 0x6b, 0x2f,
|
||||
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73,
|
||||
0x74, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x71, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
|
||||
0x73, 0x74, 0x61, 0x67, 0x65, 0x53, 0x65, 0x71, 0x22, 0x0f, 0x0a, 0x0d, 0x43, 0x61, 0x6e, 0x63,
|
||||
0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x8c, 0x02, 0x0a, 0x07, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
|
||||
0x6e, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f,
|
||||
0x6e, 0x66, 0x69, 0x67, 0x12, 0x31, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x73, 0x65, 0x18, 0x02, 0x20,
|
||||
0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65,
|
||||
0x72, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00,
|
||||
0x52, 0x05, 0x70, 0x61, 0x72, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x70, 0x6c, 0x61, 0x6e, 0x18,
|
||||
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
|
||||
0x6e, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
|
||||
0x00, 0x52, 0x04, 0x70, 0x6c, 0x61, 0x6e, 0x12, 0x31, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79,
|
||||
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
|
||||
0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||
0x74, 0x48, 0x00, 0x52, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x34, 0x0a, 0x06, 0x63, 0x61,
|
||||
0x6e, 0x63, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52,
|
||||
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c,
|
||||
0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x08, 0x52, 0x65, 0x73,
|
||||
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x03, 0x6c, 0x6f, 0x67, 0x18, 0x01, 0x20, 0x01,
|
||||
0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72,
|
||||
0x2e, 0x4c, 0x6f, 0x67, 0x48, 0x00, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x12, 0x32, 0x0a, 0x05, 0x70,
|
||||
0x61, 0x72, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f,
|
||||
0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x43, 0x6f,
|
||||
0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x00, 0x52, 0x05, 0x70, 0x61, 0x72, 0x73, 0x65, 0x12,
|
||||
0x2f, 0x0a, 0x04, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
|
||||
0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x6c, 0x61, 0x6e,
|
||||
0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x00, 0x52, 0x04, 0x70, 0x6c, 0x61, 0x6e,
|
||||
0x12, 0x32, 0x0a, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
||||
0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x41, 0x70,
|
||||
0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x00, 0x52, 0x05, 0x61,
|
||||
0x70, 0x70, 0x6c, 0x79, 0x12, 0x3a, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x75, 0x70, 0x6c,
|
||||
0x6f, 0x61, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x76,
|
||||
0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c, 0x6f,
|
||||
0x61, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64,
|
||||
0x12, 0x3a, 0x0a, 0x0b, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x70, 0x69, 0x65, 0x63, 0x65, 0x18,
|
||||
0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
|
||||
0x6e, 0x65, 0x72, 0x2e, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x50, 0x69, 0x65, 0x63, 0x65, 0x48, 0x00,
|
||||
0x52, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x50, 0x69, 0x65, 0x63, 0x65, 0x42, 0x06, 0x0a, 0x04,
|
||||
0x74, 0x79, 0x70, 0x65, 0x22, 0x9c, 0x01, 0x0a, 0x0a, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c,
|
||||
0x6f, 0x61, 0x64, 0x12, 0x3c, 0x0a, 0x0b, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x79,
|
||||
0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69,
|
||||
0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c, 0x6f, 0x61,
|
||||
0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70,
|
||||
0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02,
|
||||
0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1b,
|
||||
0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
|
||||
0x03, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63,
|
||||
0x68, 0x75, 0x6e, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x68, 0x75,
|
||||
0x6e, 0x6b, 0x73, 0x22, 0x67, 0x0a, 0x0a, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x50, 0x69, 0x65, 0x63,
|
||||
0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52,
|
||||
0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x24, 0x0a, 0x0e, 0x66, 0x75, 0x6c, 0x6c, 0x5f, 0x64, 0x61,
|
||||
0x74, 0x61, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x66,
|
||||
0x75, 0x6c, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x70,
|
||||
0x69, 0x65, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
|
||||
0x52, 0x0a, 0x70, 0x69, 0x65, 0x63, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x2a, 0xa8, 0x01, 0x0a,
|
||||
0x11, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x6d, 0x54, 0x79,
|
||||
0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12,
|
||||
0x0e, 0x0a, 0x0a, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x01, 0x12,
|
||||
0x09, 0x0a, 0x05, 0x52, 0x41, 0x44, 0x49, 0x4f, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x52,
|
||||
0x4f, 0x50, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x50, 0x55,
|
||||
0x54, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x45, 0x58, 0x54, 0x41, 0x52, 0x45, 0x41, 0x10,
|
||||
0x05, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x4c, 0x49, 0x44, 0x45, 0x52, 0x10, 0x06, 0x12, 0x0c, 0x0a,
|
||||
0x08, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x42, 0x4f, 0x58, 0x10, 0x07, 0x12, 0x0a, 0x0a, 0x06, 0x53,
|
||||
0x57, 0x49, 0x54, 0x43, 0x48, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x41, 0x47, 0x53, 0x45,
|
||||
0x4c, 0x45, 0x43, 0x54, 0x10, 0x09, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x53,
|
||||
0x45, 0x4c, 0x45, 0x43, 0x54, 0x10, 0x0a, 0x2a, 0x3f, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x4c, 0x65,
|
||||
0x76, 0x65, 0x6c, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x00, 0x12, 0x09,
|
||||
0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46,
|
||||
0x4f, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x57, 0x41, 0x52, 0x4e, 0x10, 0x03, 0x12, 0x09, 0x0a,
|
||||
0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x2a, 0x3b, 0x0a, 0x0f, 0x41, 0x70, 0x70, 0x53,
|
||||
0x68, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x09, 0x0a, 0x05, 0x4f,
|
||||
0x57, 0x4e, 0x45, 0x52, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e,
|
||||
0x54, 0x49, 0x43, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x55, 0x42,
|
||||
0x4c, 0x49, 0x43, 0x10, 0x02, 0x2a, 0x35, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x4f, 0x70, 0x65, 0x6e,
|
||||
0x49, 0x6e, 0x12, 0x0e, 0x0a, 0x06, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x00, 0x1a, 0x02,
|
||||
0x08, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x4c, 0x49, 0x4d, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f,
|
||||
0x57, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x41, 0x42, 0x10, 0x02, 0x2a, 0x37, 0x0a, 0x13,
|
||||
0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74,
|
||||
0x69, 0x6f, 0x6e, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x00, 0x12, 0x08,
|
||||
0x0a, 0x04, 0x53, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x53, 0x54,
|
||||
0x52, 0x4f, 0x59, 0x10, 0x02, 0x2a, 0x3e, 0x0a, 0x1b, 0x50, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c,
|
||||
0x74, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x53,
|
||||
0x74, 0x61, 0x67, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0a,
|
||||
0x0a, 0x06, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x4c,
|
||||
0x41, 0x49, 0x4d, 0x10, 0x02, 0x2a, 0x35, 0x0a, 0x0b, 0x54, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x53,
|
||||
0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10,
|
||||
0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x01,
|
||||
0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x47, 0x0a, 0x0e,
|
||||
0x44, 0x61, 0x74, 0x61, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17,
|
||||
0x0a, 0x13, 0x55, 0x50, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e,
|
||||
0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x55, 0x50, 0x4c, 0x4f, 0x41,
|
||||
0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x55, 0x4c, 0x45, 0x5f, 0x46, 0x49,
|
||||
0x4c, 0x45, 0x53, 0x10, 0x01, 0x32, 0x49, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
|
||||
0x6f, 0x6e, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x07, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12,
|
||||
0x14, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
|
||||
0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x30, 0x01,
|
||||
0x42, 0x30, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63,
|
||||
0x6f, 0x64, 0x65, 0x72, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x72,
|
||||
0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x64, 0x6b, 0x2f, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
||||
@@ -457,6 +457,11 @@ message Timing {
|
||||
string resource = 5;
|
||||
string stage = 6;
|
||||
TimingState state = 7;
|
||||
// stage_que distinguishes repeated runs of the same stage.
|
||||
// 0 is the first occurrence, 1 is the second, etc.
|
||||
// Repeated stages are not ideal, but they do exist and should be known
|
||||
// to be unique by this field.
|
||||
int32 stage_seq = 8;
|
||||
}
|
||||
|
||||
enum TimingState {
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// Code generated by protoc-gen-go-drpc. DO NOT EDIT.
|
||||
// protoc-gen-go-drpc version: v0.0.34
|
||||
// protoc-gen-go-drpc version: (devel)
|
||||
// source: provisionersdk/proto/provisioner.proto
|
||||
|
||||
package proto
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-ts_proto v1.181.2
|
||||
// protoc v4.23.4
|
||||
// protoc v6.32.0
|
||||
// source: google/protobuf/timestamp.proto
|
||||
|
||||
/* eslint-disable */
|
||||
|
||||
Generated
+11
-1
@@ -1,7 +1,7 @@
|
||||
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-ts_proto v1.181.2
|
||||
// protoc v4.23.4
|
||||
// protoc v6.32.0
|
||||
// source: provisioner.proto
|
||||
|
||||
/* eslint-disable */
|
||||
@@ -513,6 +513,13 @@ export interface Timing {
|
||||
resource: string;
|
||||
stage: string;
|
||||
state: TimingState;
|
||||
/**
|
||||
* stage_que distinguishes repeated runs of the same stage.
|
||||
* 0 is the first occurrence, 1 is the second, etc.
|
||||
* Repeated stages are not ideal, but they do exist and should be known
|
||||
* to be unique by this field.
|
||||
*/
|
||||
stageSeq: number;
|
||||
}
|
||||
|
||||
/** CancelRequest requests that the previous request be canceled gracefully. */
|
||||
@@ -1507,6 +1514,9 @@ export const Timing = {
|
||||
if (message.state !== 0) {
|
||||
writer.uint32(56).int32(message.state);
|
||||
}
|
||||
if (message.stageSeq !== 0) {
|
||||
writer.uint32(64).int32(message.stageSeq);
|
||||
}
|
||||
return writer;
|
||||
},
|
||||
};
|
||||
|
||||
Generated
+1
@@ -3766,6 +3766,7 @@ export interface ProvisionerTiming {
|
||||
readonly started_at: string;
|
||||
readonly ended_at: string;
|
||||
readonly stage: TimingStage;
|
||||
readonly stage_sequence: number;
|
||||
readonly source: string;
|
||||
readonly action: string;
|
||||
readonly resource: string;
|
||||
|
||||
@@ -188,6 +188,7 @@ export const MissedAction: Story = {
|
||||
source: "coder",
|
||||
stage: "apply",
|
||||
started_at: "2025-03-12T18:08:07.194957Z",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
action: "create",
|
||||
@@ -197,6 +198,7 @@ export const MissedAction: Story = {
|
||||
source: "null",
|
||||
stage: "apply",
|
||||
started_at: "2025-03-12T18:08:07.399387Z",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
action: "create",
|
||||
@@ -206,6 +208,7 @@ export const MissedAction: Story = {
|
||||
source: "random",
|
||||
stage: "apply",
|
||||
started_at: "2025-03-12T18:08:07.403171Z",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
action: "missed action",
|
||||
@@ -215,6 +218,7 @@ export const MissedAction: Story = {
|
||||
source: "null",
|
||||
stage: "apply",
|
||||
started_at: "2025-03-12T18:08:07.410219Z",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
],
|
||||
},
|
||||
|
||||
@@ -10,6 +10,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "terraform",
|
||||
resource: "coder_stage_init",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -19,6 +20,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "terraform",
|
||||
resource: "coder_stage_plan",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -28,6 +30,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "data.coder_workspace_owner.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -37,6 +40,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "data.coder_parameter.repo_base_dir",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -46,6 +50,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.coder-login.data.coder_workspace_owner.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -55,6 +60,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "data.coder_parameter.image_type",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -64,6 +70,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "data.coder_external_auth.github",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -73,6 +80,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.dotfiles.data.coder_parameter.dotfiles_uri[0]",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -82,6 +90,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.jetbrains_gateway.data.coder_parameter.jetbrains_ide",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -91,6 +100,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.jetbrains_gateway.data.coder_workspace.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -100,6 +110,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "data.coder_workspace.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -109,6 +120,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "data.coder_parameter.region",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -118,6 +130,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.filebrowser.data.coder_workspace_owner.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -127,6 +140,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.cursor.data.coder_workspace_owner.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -136,6 +150,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.cursor.data.coder_workspace.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -146,6 +161,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
action: "read",
|
||||
resource:
|
||||
'module.jetbrains_gateway.data.http.jetbrains_ide_versions["WS"]',
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -155,6 +171,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.coder-login.data.coder_workspace.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -164,6 +181,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "read",
|
||||
resource: "module.filebrowser.data.coder_workspace.me",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -174,6 +192,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
action: "read",
|
||||
resource:
|
||||
'module.jetbrains_gateway.data.http.jetbrains_ide_versions["GO"]',
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -183,6 +202,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "coder_agent.dev",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -192,6 +212,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.slackme.coder_script.install_slackme",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -201,6 +222,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.dotfiles.coder_script.dotfiles",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -210,6 +232,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.git-clone.coder_script.git_clone",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -219,6 +242,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.personalize.coder_script.personalize",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -228,6 +252,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.code-server.coder_app.code-server",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -237,6 +262,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.cursor.coder_app.cursor",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -246,6 +272,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.coder-login.coder_script.coder-login",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -255,6 +282,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.code-server.coder_script.code-server",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -264,6 +292,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.filebrowser.coder_script.filebrowser",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -273,6 +302,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.filebrowser.coder_app.filebrowser",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -282,6 +312,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "state refresh",
|
||||
resource: "module.jetbrains_gateway.coder_app.gateway",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -291,6 +322,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "docker",
|
||||
action: "state refresh",
|
||||
resource: "docker_volume.home_volume",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -300,6 +332,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "docker",
|
||||
action: "read",
|
||||
resource: "data.docker_registry_image.dogfood",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -309,6 +342,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "docker",
|
||||
action: "state refresh",
|
||||
resource: "docker_image.dogfood",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -318,6 +352,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "terraform",
|
||||
action: "building terraform dependency graph",
|
||||
resource: "state file",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -327,6 +362,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "terraform",
|
||||
resource: "coder_stage_apply",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -336,6 +372,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "delete",
|
||||
resource: "module.coder-login.coder_script.coder-login",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -345,6 +382,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "create",
|
||||
resource: "module.coder-login.coder_script.coder-login",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -354,6 +392,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "docker",
|
||||
action: "create",
|
||||
resource: "docker_container.workspace[0]",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
{
|
||||
job_id: "86fd4143-d95f-4602-b464-1149ede62269",
|
||||
@@ -363,6 +402,7 @@ export const WorkspaceTimingsResponse: WorkspaceBuildTimings = {
|
||||
source: "coder",
|
||||
action: "create",
|
||||
resource: "coder_metadata.container_info[0]",
|
||||
stage_sequence: 0,
|
||||
},
|
||||
],
|
||||
agent_script_timings: [
|
||||
|
||||
Reference in New Issue
Block a user