mise à jour pyinstaller avec Github / bitbucket

j'essaie d'intégrer pyinstaller avec la fonction de mise à jour pour les rapports privés. Ma question, y a-t-il un moyen d'intégrer pyupdater avec des alternatives gratuites telles que: bitbucket private repos? Pyupdater a tendance à travailler pour des repo publiques mais je ne peux pas trouver comment je peux réaliser cela pour des repo privées.

fichier de configuration:

class ClientConfig(object):
    PUBLIC_KEY = 'None'
    APP_NAME = 'dad123'
    COMPANY_NAME = 'dad123'
    UPDATE_URLS = ['ssh://git@bitbucket.org/Tysondogerz/ssh/download']
    MAX_DOWNLOAD_RETRIES = 3

créer un ssh est assez facile:

ssh-keygen -t rsa -C "youremail@example.com"

...

Main.py

#!/usr/bin/env python3
from __future__ import print_function
import time
import argparse
import os
import signal
import sys
import logging
from selenium import webdriver

logging.basicConfig(level=logging.DEBUG)

from client_config import ClientConfig
from pyupdater.client import Client, AppUpdate, LibUpdate

Ssh_key  = DWDJKWNADKJWANDJKWANDWJKDNAWJKDNWAKDNWAJDKWANDJKWANDWAJKDNWAKJDWNADKJWANDWAJKDNAWJKDNWAJKDNWAJKDWNADJKWANDJKWANDKJWADNWAJKDNWAJKNWQWQDWQNDJKQWNDJKWQNDWQJKDNWQJKDNWKJDNWKJANDWJKNDWJKNDWDUWDNWDHDUIWHDIUWHDUIWHDUIWHDIUWHDUIWHDWUDHWUIHDWUDHUhottyouremail@example.com

    client = Client(ClientConfig(), ssh={'ssh_key'})

    from pyupdater.client import Client
from client_config import ClientConfig


def print_status_info(info):
    total = info.get(u'total')
    downloaded = info.get(u'downloaded')
    status = info.get(u'status')
    print downloaded, total, status


client = Client(ClientConfig())
client.refresh()

client.add_progress_hook(print_status_info)


client = Client(ClientConfig(), refresh=True,
                        progress_hooks=[print_status_info])

lib_update = client.update_check(ASSET_NAME, ASSET_VERSION)

lib_update = client.update_check(ASSET_NAME, ASSET_VERSION, channel='beta')

if lib_update is not None:
    lib_update.download()
        driver = webdriver.Firefox()
        driver.get('http://stackoverflow.com')


if __name__ == "__main__":
    main()
15
demandé sur Jim Redmond 2018-01-01 08:11:27

1 réponses

la section Téléchargements n'est pas accessible via SSH. Vous devrez utiliser d'autres formes d'authentification via HTTPS pour récupérer ces fichiers. ( mots de passe des applications peut être votre meilleure option ici, puisqu'ils peuvent être scopés très spécifiquement et écartés si nécessaire.)

1
répondu Jim Redmond 2018-01-11 05:13:22