Seperate target name and project into their own keys for target index
This commit is contained in:
parent
49cf6b8c29
commit
f5fa1f330a
@ -1,8 +1,6 @@
|
|||||||
package state
|
package state
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"strings"
|
|
||||||
|
|
||||||
"github.com/boltdb/bolt"
|
"github.com/boltdb/bolt"
|
||||||
"github.com/golang/protobuf/proto"
|
"github.com/golang/protobuf/proto"
|
||||||
"github.com/hashicorp/go-memdb"
|
"github.com/hashicorp/go-memdb"
|
||||||
@ -270,7 +268,7 @@ func targetIndexSchema() *memdb.TableSchema {
|
|||||||
targetIndexNameIndexName: {
|
targetIndexNameIndexName: {
|
||||||
Name: targetIndexNameIndexName,
|
Name: targetIndexNameIndexName,
|
||||||
AllowMissing: false,
|
AllowMissing: false,
|
||||||
Unique: true,
|
Unique: false,
|
||||||
Indexer: &memdb.StringFieldIndex{
|
Indexer: &memdb.StringFieldIndex{
|
||||||
Field: "Name",
|
Field: "Name",
|
||||||
Lowercase: true,
|
Lowercase: true,
|
||||||
@ -288,21 +286,32 @@ const (
|
|||||||
|
|
||||||
type targetIndexRecord struct {
|
type targetIndexRecord struct {
|
||||||
Id string // Resource ID
|
Id string // Resource ID
|
||||||
Name string // Project Resource ID + Target Name
|
Name string // Target Name
|
||||||
|
ProjectId string // Project Resource ID
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *State) newTargetIndexRecord(m *vagrant_server.Target) *targetIndexRecord {
|
func (s *State) newTargetIndexRecord(m *vagrant_server.Target) *targetIndexRecord {
|
||||||
|
var projectResourceId string
|
||||||
|
if m.Project != nil {
|
||||||
|
projectResourceId = m.Project.ResourceId
|
||||||
|
}
|
||||||
i := &targetIndexRecord{
|
i := &targetIndexRecord{
|
||||||
Id: m.ResourceId,
|
Id: m.ResourceId,
|
||||||
Name: strings.ToLower(m.Project.ResourceId + "+" + m.Name),
|
Name: m.Name,
|
||||||
|
ProjectId: projectResourceId,
|
||||||
}
|
}
|
||||||
return i
|
return i
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *State) newTargetIndexRecordByRef(ref *vagrant_plugin_sdk.Ref_Target) *targetIndexRecord {
|
func (s *State) newTargetIndexRecordByRef(ref *vagrant_plugin_sdk.Ref_Target) *targetIndexRecord {
|
||||||
|
var projectResourceId string
|
||||||
|
if ref.Project != nil {
|
||||||
|
projectResourceId = ref.Project.ResourceId
|
||||||
|
}
|
||||||
return &targetIndexRecord{
|
return &targetIndexRecord{
|
||||||
Id: ref.ResourceId,
|
Id: ref.ResourceId,
|
||||||
Name: strings.ToLower(ref.Project.ResourceId + "+" + ref.Name),
|
Name: ref.Name,
|
||||||
|
ProjectId: projectResourceId,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user