| 173 | } |
| 174 | |
| 175 | func (s *Store) write(all map[string]Entity) error { |
| 176 | if err := os.MkdirAll(s.dir, 0o755); err != nil { |
| 177 | return fmt.Errorf("entities: mkdir %s: %w", s.dir, err) |
| 178 | } |
| 179 | data, err := json.MarshalIndent(all, "", " ") |
| 180 | if err != nil { |
| 181 | return fmt.Errorf("entities: marshal: %w", err) |
| 182 | } |
| 183 | data = append(data, '\n') |
| 184 | if err := os.WriteFile(s.Path(), data, 0o600); err != nil { |
| 185 | return fmt.Errorf("entities: write %s: %w", s.Path(), err) |
| 186 | } |
| 187 | return nil |
| 188 | } |
| 189 | |
| 190 | func (s *Store) migrateIfInstruction() error { |
| 191 | if s.kind != KindInstruction { |