Add pull container image, token config

This commit is contained in:
Aurelien Vaillant
2022-03-02 14:20:48 +01:00
parent 948b4077e6
commit 72becd2538
3 changed files with 25 additions and 10 deletions
+14
View File
@@ -6,6 +6,7 @@ from pathlib import PurePosixPath
from docker.errors import DockerException from docker.errors import DockerException
from .issue import ContainerErrorTest from .issue import ContainerErrorTest
from .properties import ContainerObject from .properties import ContainerObject
from .misc import read_token
class VirtualMachine: class VirtualMachine:
@@ -14,7 +15,9 @@ class VirtualMachine:
self.container = container self.container = container
self.base_command = self.container.commands self.base_command = self.container.commands
self.clear_containers() self.clear_containers()
self.pull_image()
@staticmethod @staticmethod
def start_docker(): def start_docker():
@@ -27,6 +30,17 @@ class VirtualMachine:
print('Docker isn\'t start or installed') print('Docker isn\'t start or installed')
exit(1) exit(1)
def pull_image(self):
"""Pull docker image"""
print(f'Pull this image : {self.container.image}')
if 'unreal' in self.container.label:
unreal_token = read_token('token_unreal.txt')
self.client.login(registry='https://ghcr.io', username='stilobique', password=unreal_token)
print('Start to PULL image')
self.client.images.pull(f'{self.container.image}:{self.container.tag}')
print('Image is pull')
def clear_containers(self): def clear_containers(self):
"""Look all docker containers, and remove-it if the task are used with the unit test.""" """Look all docker containers, and remove-it if the task are used with the unit test."""
containers = self.client.containers.list(all=True) containers = self.client.containers.list(all=True)
+1 -10
View File
@@ -1,16 +1,7 @@
import os
import requests import requests
from pathlib import Path
from github import Github from github import Github
from misc import read_token
def read_token():
token_file = Path(os.getcwd(), 'tests', 'token.txt')
with open(token_file, 'r') as f:
token = f.read()
return token
def get_release_file(filename: str, repo: str, prerelease: bool = False): def get_release_file(filename: str, repo: str, prerelease: bool = False):
+10
View File
@@ -4,6 +4,16 @@ import sys
import zipfile import zipfile
from .issue import ArchiveFolderSourceNotFound from .issue import ArchiveFolderSourceNotFound
from pathlib import Path
def read_token(file: str = 'token.txt') -> str:
"""From tests folder, return a token string, in a dedicated file"""
token_file = Path(os.getcwd(), 'tests', file)
with open(token_file, 'r') as f:
token = f.read()
return token
def generate_archive(list_clean: list, name: str): def generate_archive(list_clean: list, name: str):