Exemple #1
0
    def execute_version(self) -> None:    
        """ if self.bump == 'existing':
            self.preversion()

            self.refresh_package()        
            version = self.json["version"]
            return

        elif self.bump == 'current':            
            self.preversion()
            
            self.refresh_package()        
            version = self.json["version"]
            
            shell.run(f"git tag {version} && git push -q --tags")
            self.version()
            shell.run(f"git add . && git commit -q -m ${version} && git push -q")
            self.postversion()
        else:
            shell.run(f'npm version {self.bump}') """

        shell.run(f'npm version {self.bump}')

        self.refresh_package()

        for folder in [".dist", "dist", output_folder]:
            if os.path.isdir(folder):
                shutil.rmtree(folder)

        os.mkdir(output_folder)
    def process_repository(self, repo: Repository, template: Template,
                           args: Args):
        print(f"{Fore.BLUE}Initializing repository...")

        remote_url = (
            f"https://github.com/AppalachiaInteractive/{repo.package.value}.git"
        )

        if DRY_RUN:
            print(remote_url)
            return
        try:
            git_repo = git.Repo(repo.directory.value)

        except git.InvalidGitRepositoryError:

            can_create = do_ask(
                f'{Fore.YELLOW}The remote "origin" at {Fore.CYAN}[{remote_url}]{Fore.YELLOW} does not exist.  {Fore.MAGENTA}Should we create it?',
                args.createrepo)

            if not can_create:
                return

            public = do_ask(f"{Fore.MAGENTA}Is this repository public?",
                            args.repopublic)

            command = 'sh "{0}" "AppalachiaInteractive/{1}" {2} "{3}"'.format(
                os.path.join(get_home(), command_dir, "repo", "init.sh"),
                repo.package.value,
                "public" if public else "private",
                repo.description.value,
            )

            print(command)
            run(command)
    def process_generator(self, repo: Repository, template: Template):
        if template.generator == "":
            return

        print("Running generator...")

        command = f'{template.generator} && git add . && git commit -q -m "Adding project scaffolding" && git push -q'

        print(command)
        run(command)
Exemple #4
0
    def prepack(self):
        demarcate("[PREPACK]")

        self.changelog()
        self.releaselog()

        mods = "modifications.sh"
        if os.path.isfile(mods):
            shell.run(f"bash {mods}")

        shell.run(
            "git add . && git commit -m \"Updating changelog and releaselog\" && git push -q"
        )
    def execute_package(self) -> Tuple[str, List[str]]:
        cwd = os.getcwd()
        dist_folder = os.path.join(cwd, output_folder)

        vsix = self.get_vsix_name()
        vsix_path = os.path.join(dist_folder, vsix)
        ext_path = os.path.join(cwd, 'extension.vsix')

        shell.run(f"vsce package -o {vsix_path}")

        shutil.copy(vsix_path, ext_path)

        os.chdir(dist_folder)
        shell.run(f'npm pack ..')
        os.chdir(cwd)

        package_path = self.get_package_path()
        return package_path, [vsix_path]
Exemple #6
0
    def execute_package(self) -> Tuple[str, List[str]]:
           
        if self.bump != 'existing':               
            cwd = os.getcwd()
            dist_folder= os.path.join(cwd, output_folder)

            if (not os.path.isdir(dist_folder)):
                os.mkdir(dist_folder)

            os.chdir(dist_folder)
            shell.run(f'npm --quiet pack ..')
            os.chdir(cwd)

        try:
            package_path = self.get_package_path()
        except ValueError:
            self.bump = 'create'
            return self.execute_package()

        return package_path, []
    def package(self):
        demarcate("[PACKAGE]")

        shell.run('webpack --mode production --devtool hidden-source-map')
 def test():
     demarcate("[TEST]")
     shell.run("mocha")
Exemple #9
0
    def release(self, package_path: str, additional_files : List[str]):
        package_path = f'./{package_path}'

        name = self.json["name"]
        version = self.json["version"]

        npmpfx=f'npm --quiet --registry {npm_registry}'
        try:
            shell.run(f'{npmpfx} unpublish \"{name}@{version}\"')
        except:
            pass

        shell.run(f'{npmpfx} --max-old-space-size=4096 publish \"{package_path}\"')

        file_args = self.get_gh_file_args(additional_files)
        
        tag = f'v{version}'

        shell.run(f'git push -q')
        shell.run(f'git fetch -q --tags -f && git pull -q --tags && git push -q --tags')
                
        try:
            shell.run(f'git tag -d {tag}')
        except:
            pass

        shell.run(f'git push origin :refs/tags/{tag}')

        try:
            shell.run(f'gh release delete {tag} -y')
        except:
            pass
        
        shell.run(f'gh release create {tag} \"{package_path}\" {file_args} -F RELEASELOG.md')
Exemple #10
0
 def releaselog(self):
     home = get_home()
     self.refresh_package()        
     version = self.json["version"]
     shell.run(f"bash {home}/com.appalachia/appa/appa.sh docs releaselog {version}")
Exemple #11
0
 def releaselog(self):
     home = get_home()
     shell.run(f"bash {home}/com.appalachia/appa/appa.sh docs releaselog")
 def lint(self):
     demarcate("[LINT]")
     shell.run("eslint src --ext ts")
Exemple #13
0
 def changelog(self):
     home = get_home()
     shell.run(f"bash {home}/com.appalachia/appa/appa.sh docs changelog")
Exemple #14
0
 def preversion(self):
     demarcate("[PREVERSION]")
     shell.run(
         "git fetch -q -p && git pull -q && git fetch -q --tags -f && git pull -q --tags && git push -q --tags"
     )
 def compile(self):
     demarcate("[COMPILE]")
     shell.run("webpack")
 def test_compile(self):
     demarcate("[TEST-COMPILE]")
     shell.run("tsc -p ./")
 def test(self):
     demarcate("[TEST]")
     shell.run("./out/test/runTest.js")