diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index dcf9353..0000000 --- a/Jenkinsfile +++ /dev/null @@ -1,20 +0,0 @@ -pipeline { - agent any - - stages { - stage('Build') { - steps { - git branch: 'main', url: 'https://git.siwatsystem.com/ise-senior-iot/iot-firmware.git' - sh 'export PLATFORMIO_PATH=/root/.platformio/penv/bin/platformio' - sh '/usr/bin/python3 gen_release.py' - stash includes: 'release/**/*', name: 'release_binaries' - } - } - stage('Publish') { - steps { - unstash 'release_binaries' - archiveArtifacts artifacts: 'release/**/*', fingerprint: true - } - } - } -} diff --git a/gen_release.py b/gen_release.py index 24fa03b..5e91300 100644 --- a/gen_release.py +++ b/gen_release.py @@ -19,23 +19,11 @@ current_dir = os.path.dirname(os.path.abspath(__file__)) # Define the path to the firmware folder firmware_folder = os.path.join(current_dir, 'firmware') -# Create the firmware folder if it does not exist -if not os.path.exists(firmware_folder): - os.makedirs(firmware_folder) - # Define the path to the release folder release_folder = os.path.join(current_dir, 'release') -# Get the platformio path from environment variable -platformio_path = os.environ.get('PLATFORMIO_PATH') -# If the environment variable is not set, use the default path -if platformio_path is None: - if platform.system() == 'Darwin': - platformio_path = os.path.expanduser('~/.platformio/penv/bin/platformio') - elif platform.system() == 'Windows': - platformio_path = os.path.expanduser('~/.platformio/penv/Scripts/platformio.exe') - elif platform.system() == 'Linux': - platformio_path = os.path.expanduser('~/.platformio/penv/bin/platformio') +# Add the path to the PlatformIO executable to the system PATH +platformio_path = os.path.expanduser('~/.platformio/penv/Scripts') if os.path.exists(release_folder): # If the release folder exists, delete it @@ -91,11 +79,11 @@ for environment in environments: # if argument is not supplied, build all environments listed in platformio.ini if len(sys.argv) == 1: - subprocess.run([f'{platformio_path}', 'run','-c',f'{firmware_folder}/platformio.ini'], cwd=current_dir) + subprocess.run([f'{platformio_path}/platformio.exe', 'run','-c',f'{firmware_folder}/platformio.ini'], cwd=current_dir) for environment in environments: if(len(sys.argv) > 1): - subprocess.run([f'{platformio_path}', 'run', '-e', environment,'-c',f'{firmware_folder}/platformio.ini'], cwd=current_dir) + subprocess.run([f'{platformio_path}/platformio.exe', 'run', '-e', environment,'-c',f'{firmware_folder}/platformio.ini'], cwd=current_dir) # Iterate over the subfolders in the firmware folder for subfolder in os.listdir(firmware_folder): diff --git a/platformio.ini b/platformio.ini index da29e98..b32f365 100644 --- a/platformio.ini +++ b/platformio.ini @@ -9,7 +9,7 @@ ; https://docs.platformio.org/page/projectconf.html [platformio] -build_dir = firmware +build_dir = .\firmware [env:full] platform = espressif32