PATH = '.\\streamwriter'
NUSPEC_FILE = PATH + '\\streamwriter.nuspec'
PS1_FILE = PATH + '\\tools\\chocolateyinstall.ps1'

print('Searching for Streamwriter update')

# Get latest version information an download url from HTML
url = 'https://streamwriter.org/en/'
try:
    data = requests.get(url).text
    version = re.findall(r'Current version: \d\.\d\.\d\.\d', data)[0]
    download_url = 'https://streamwriter.org/en/downloads/2/'
    latest_version = re.findall(r'\d\.\d\.\d\.\d', version)[0]
    print('Latest version from Streamwriter download page: ' + latest_version)
except:
    print('Requesting URL failed, terminating.')
    sys.exit()

# Get last committed chocolatey version from nuspec
nupkg_version = choco.get_version_from_nupgk(NUSPEC_FILE)
print('Chocolatey Version: ' + nupkg_version)

if LooseVersion(latest_version) > LooseVersion(nupkg_version):
    print('Download URL: ' + download_url)
    choco.update_package(PATH, NUSPEC_FILE, PS1_FILE, latest_version, '',
                         download_url)
    sys.exit()
else:
    print('No update available')
    sys.exit()
예제 #2
0
# Get latest version information an download url from HTML
url = 'https://dl.minio.io/client/mc/release/windows-amd64/'
data = requests.get(url).text
soup = BeautifulSoup(data, 'lxml')
table = soup.find_all('table')[0]
latest_version = ''
for row in table.find_all('tr'):
    if latest_version != '':
        break
    columns = row.find_all('td')
    for column in columns:
        val = column.get_text()
        if len(val) == 16:
            latest_version = val[:10].replace('-', '.')
            break

print('Latest version from minio download page: ' + latest_version)

# Get last committed chocolatey version from nuspec
nupkg_version = choco.get_version_from_nupgk(NUSPEC_FILE)
print('Chocolatey Version: ' + nupkg_version)

if LooseVersion(latest_version) > LooseVersion(nupkg_version):
    choco.update_package(PATH, NUSPEC_FILE, PS1_FILE, latest_version,
                         DOWNLOAD_URL, '')
    sys.exit(1)
else:
    print('No update available')
    sys.exit(0)