From f8cc23ba390a90515be66aea06338b1e82da81e4 Mon Sep 17 00:00:00 2001 From: Emanuele Turella Date: Thu, 25 Feb 2021 17:29:47 +0100 Subject: [PATCH] fix issue #2 --- package.json | 5 ++++- src/git-info/index.ts | 15 ++++++++------- src/utility/util.ts | 24 ++++++++++++++---------- 3 files changed, 26 insertions(+), 18 deletions(-) diff --git a/package.json b/package.json index 55b30c1..8c1b110 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@w11k/git-info", - "version": "1.0.2", + "version": "1.0.3", "description": "A blank schematics", "scripts": { "schematics": "schematics", @@ -17,6 +17,9 @@ "author": "Kai Henzler", "license": "MIT", "schematics": "./src/collection.json", + "ng-add": { + "save": "devDependencies" + }, "dependencies": { "@angular-devkit/core": "^9.1.3", "@angular-devkit/schematics": "^9.1.3", diff --git a/src/git-info/index.ts b/src/git-info/index.ts index 0492997..41bf1e5 100644 --- a/src/git-info/index.ts +++ b/src/git-info/index.ts @@ -1,12 +1,12 @@ import { apply, chain, mergeWith, move, Rule, SchematicContext, Tree, url } from '@angular-devkit/schematics'; import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks'; +import { concat, Observable, of } from 'rxjs'; +import { concatMap, map } from 'rxjs/operators'; +import { addPackageJsonDependency, NodeDependencyType } from '../utility/dependencies'; +import { addPropertyToGitignore, addPropertyToPackageJson, getLatestNodeVersion, NodePackage } from '../utility/util'; -import { addPropertyToGitignore, addPropertyToPackageJson, getLatestNodeVersion, NodePackage, } from '../utility/util'; -import { addPackageJsonDependency, NodeDependencyType } from '../utility/dependencies'; -import { concat, Observable, of } from 'rxjs'; -import { concatMap, map } from 'rxjs/operators'; export function gitInfo(): Rule { @@ -25,10 +25,10 @@ function updateDependencies(): Rule { context.logger.debug('Updating dependencies...'); context.addTask(new NodePackageInstallTask()); - const fixedDependencies = of({name: 'fs-extra', version: '6.0.1'}) + const fixedDependencies = of({ name: 'fs-extra', version: '6.0.1' }) .pipe( map((packageFromRegistry: NodePackage) => { - const {name, version} = packageFromRegistry; + const { name, version } = packageFromRegistry; context.logger.debug(`Adding ${name}:${version} to ${NodeDependencyType.Dev}`); addPackageJsonDependency(tree, { @@ -43,7 +43,7 @@ function updateDependencies(): Rule { const addLatestDependencies = of('git-describe').pipe( concatMap((packageName: string) => getLatestNodeVersion(packageName)), map((packageFromRegistry: NodePackage) => { - const {name, version} = packageFromRegistry; + const { name, version } = packageFromRegistry; context.logger.debug(`Adding ${name}:${version} to ${NodeDependencyType.Dev}`); addPackageJsonDependency(tree, { @@ -80,6 +80,7 @@ function addScriptsToPackageJson(): Rule { function addVersionGeneratorToGitignore(): Rule { return (tree: Tree, context: SchematicContext) => { addPropertyToGitignore(tree, context, 'src/environments/version.ts'); + addPropertyToGitignore(tree, context, '*/environments/version.ts'); return tree; }; } diff --git a/src/utility/util.ts b/src/utility/util.ts index 671b059..c622109 100644 --- a/src/utility/util.ts +++ b/src/utility/util.ts @@ -1,12 +1,12 @@ -import { JsonAstObject, JsonParseMode, parseJsonAst, } from '@angular-devkit/core'; +import { JsonAstObject, JsonParseMode, parseJsonAst } from '@angular-devkit/core'; +import { SchematicContext, SchematicsException, Tree } from '@angular-devkit/schematics'; +import { get } from 'http'; +import { pkgJson } from './dependencies'; +import { appendPropertyInAstObject, findPropertyInAstObject, insertPropertyInAstObjectInOrder } from './json-utils'; -import { SchematicContext, SchematicsException, Tree, } from '@angular-devkit/schematics'; -import { pkgJson, } from './dependencies'; -import { appendPropertyInAstObject, findPropertyInAstObject, insertPropertyInAstObjectInOrder, } from './json-utils'; -import { get } from 'http'; export interface NodePackage { name: string; @@ -58,7 +58,7 @@ export function addPropertyToPackageJson( // script found, overwrite value context.logger.debug(`overwriting ${key} with ${value}`); - const {end, start} = innerNode; + const { end, start } = innerNode; recorder.remove(start.offset, end.offset - start.offset); recorder.insertRight(start.offset, JSON.stringify(value)); @@ -77,11 +77,15 @@ export function addPropertyToGitignore(tree: Tree, _context: SchematicContext, f } const content = buffer.toString(); - _context.logger.debug('gitignore content' + content); + if (content.includes(file)) { + _context.logger.debug('gitignore already includes "' + file + '"'); + } else { + _context.logger.debug('gitignore content' + content); - const updatedContent = `${content}\n${file}`; + const updatedContent = `${content}\n${file}`; - tree.overwrite(GIT_IGNORE_FILE, updatedContent); + tree.overwrite(GIT_IGNORE_FILE, updatedContent); + } } else { _context.logger.debug('no gitignore found'); } @@ -113,7 +117,7 @@ export function getLatestNodeVersion(packageName: string): Promise }); function buildPackage(name: string, version: string = DEFAULT_VERSION): NodePackage { - return {name, version}; + return { name, version }; } }