writeProjectFiles creates directories, config, and all init files.
(root, taskDirAbs, taskDirPath string, idStrategy idStrategyConfig, rootFiles, taskDirFiles []fileToWrite, quiet bool)
| 144 | |
| 145 | // writeProjectFiles creates directories, config, and all init files. |
| 146 | func writeProjectFiles(root, taskDirAbs, taskDirPath string, idStrategy idStrategyConfig, rootFiles, taskDirFiles []fileToWrite, quiet bool) error { |
| 147 | var createdPaths []string |
| 148 | |
| 149 | dirCreated, err := ensureTaskDir(taskDirAbs, quiet) |
| 150 | if err != nil { |
| 151 | return err |
| 152 | } |
| 153 | if dirCreated { |
| 154 | abs, _ := filepath.Abs(taskDirAbs) |
| 155 | createdPaths = append(createdPaths, abs+"/") |
| 156 | } |
| 157 | |
| 158 | configCreated, err := writeConfigFile(root, taskDirPath, idStrategy, quiet) |
| 159 | if err != nil { |
| 160 | return err |
| 161 | } |
| 162 | if configCreated { |
| 163 | abs, _ := filepath.Abs(filepath.Join(root, configFilename)) |
| 164 | createdPaths = append(createdPaths, abs) |
| 165 | } |
| 166 | |
| 167 | rootCreated, err := writeInitFiles(root, rootFiles, quiet) |
| 168 | if err != nil { |
| 169 | return err |
| 170 | } |
| 171 | createdPaths = append(createdPaths, rootCreated...) |
| 172 | |
| 173 | tdCreated, err := writeInitFiles(taskDirAbs, taskDirFiles, quiet) |
| 174 | if err != nil { |
| 175 | return err |
| 176 | } |
| 177 | createdPaths = append(createdPaths, tdCreated...) |
| 178 | |
| 179 | // Write built-in templates to .taskmd/templates/ |
| 180 | if !projectInitNoTemplates { |
| 181 | tmplCreated, err := writeBuiltinTemplates(root, quiet) |
| 182 | if err != nil { |
| 183 | return err |
| 184 | } |
| 185 | createdPaths = append(createdPaths, tmplCreated...) |
| 186 | } |
| 187 | |
| 188 | if !quiet { |
| 189 | printInitSummary(createdPaths) |
| 190 | } |
| 191 | |
| 192 | return nil |
| 193 | } |
| 194 | |
| 195 | // writeBuiltinTemplates copies built-in task templates to .taskmd/templates/. |
| 196 | func writeBuiltinTemplates(root string, quiet bool) ([]string, error) { |
no test coverage detected