Skip to content

Commit

Permalink
Tests: Update to run containers
Browse files Browse the repository at this point in the history
  • Loading branch information
Aleksashka11 committed Feb 3, 2025
1 parent cb918b5 commit 7898d0e
Show file tree
Hide file tree
Showing 12 changed files with 13 additions and 70 deletions.
2 changes: 0 additions & 2 deletions libraries/bio/src/pdb/auto-dock-service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@ export interface IAutoDockService {

awaitStatus(targetStatus: DockerContainerStatus, timeout?: number): Promise<void>;

healthCheck(): Promise<void>;

checkOpenCl(): Promise<number>;

/**
Expand Down
11 changes: 0 additions & 11 deletions packages/Admetica/dockerfiles/Admetica.py
Original file line number Diff line number Diff line change
Expand Up @@ -200,16 +200,5 @@ def admetica_predict():
"result": None
}), 500

@app.route('/health_check', methods=['GET'])
def health_check():
try:
return jsonify({"success": True, "error": None, "result": "Service is up and running"}), 200
except Exception as e:
return jsonify({
"success": False,
"error": str(e),
"result": None
}), 500

if __name__ == '__main__':
app.run(host='0.0.0.0', port=6678, debug=False)
2 changes: 1 addition & 1 deletion packages/Admetica/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
},
"dependencies": {
"@datagrok-libraries/tutorials": "^1.5.2",
"@datagrok-libraries/utils": "../../libraries/utils",
"@datagrok-libraries/utils": "^4.4.0",
"cash-dom": "^8.1.5",
"datagrok-api": "^1.23.0",
"dayjs": "=1.11.10"
Expand Down
10 changes: 2 additions & 8 deletions packages/Admetica/src/tests/admetica-tests.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,8 @@ category('Admetica', () => {
if (!admeticaContainer)
admeticaContainer = await grok.dapi.docker.dockerContainers.filter('admetica').first();

const healthCheckPromise = admeticaContainer.status !== 'started'
? [
grok.dapi.docker.dockerContainers.fetchProxy(admeticaContainer.id, '/health_check', { method: 'GET' }),
awaitStatus(admeticaContainer.id, 'started', 90000, _package.logger)
]
: [];

await Promise.all([...healthCheckPromise]);
if (!admeticaContainer.status.startsWith('started'))
await grok.dapi.docker.dockerContainers.run(admeticaContainer.id, true);
await setProperties();
});

Expand Down
4 changes: 0 additions & 4 deletions packages/Chem/dockerfiles/chem/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,6 @@ def chem_inchi_to_smiles():
result = parallelize(inchi_to_smiles, [inchi], [inchi], Settings.num_cores)
return _make_response(json.dumps(result), headers=headers_app_json)

@bp.route('/chem/health_check', methods=['GET'])
def health_check():
return jsonify({"success": True, "error": None, "result": "Service is up and running"}), 200

def _make_response(data, headers=None):
response = Response(data)
response.headers = {
Expand Down
4 changes: 0 additions & 4 deletions packages/Chem/dockerfiles/chemprop/grok_compute.py
Original file line number Diff line number Diff line change
Expand Up @@ -123,10 +123,6 @@ def modeling_models():
# All models status
return _make_response(None)

@bp.route('/modeling/health_check', methods=['GET'])
def health_check():
return jsonify({"success": True, "error": None, "result": "Service is up and running"}), 200

def _make_response(data, headers=None):
response = Response(data)
response.headers = {
Expand Down
2 changes: 1 addition & 1 deletion packages/Chem/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
"@datagrok-libraries/ml": "^6.7.6",
"@datagrok-libraries/math": "^1.2.5",
"@datagrok-libraries/tutorials": "^1.4.2",
"@datagrok-libraries/utils": "../../libraries/utils",
"@datagrok-libraries/utils": "^4.4.0",
"@types/pako": "^2.0.3",
"typescript-lru-cache": "^2.0.0",
"cash-dom": "^8.1.5",
Expand Down
20 changes: 5 additions & 15 deletions packages/Chem/src/tests/ui-tests-top-menu.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,21 +22,11 @@ category('UI top menu', () => {
grok.dapi.docker.dockerContainers.filter('name = "chem-chem"').first()
]);

await Promise.all([
...(chemContainer.status !== 'started'
? [
grok.dapi.docker.dockerContainers.fetchProxy(chemContainer.id, '/chem/health_check', { method: 'GET' }),
awaitStatus(chemContainer.id, 'started', 90000, _package.logger)
]
: []),

...(chempropContainer.status !== 'started'
? [
grok.dapi.docker.dockerContainers.fetchProxy(chempropContainer.id, '/modeling/health_check', { method: 'GET' }),
awaitStatus(chempropContainer.id, 'started', 90000, _package.logger)
]
: [])
]);
if (!chemContainer.status.startsWith('started'))
await grok.dapi.docker.dockerContainers.run(chemContainer.id, true);

if (!chemContainer.status.startsWith('started'))
await grok.dapi.docker.dockerContainers.run(chempropContainer.id, true);
});

test('similarity search', async () => {
Expand Down
4 changes: 0 additions & 4 deletions packages/Docking/dockerfiles/autodock/autodock.py
Original file line number Diff line number Diff line change
Expand Up @@ -148,10 +148,6 @@ def extract_json_values(json_data):
debug_mode = request.args.get('debug', False)
return receptor_value, receptor_format, ligand_value, ligand_format, autodock_gpf, pose_count, debug_mode

@app.route('/health_check', methods=['GET'])
def health_check():
return jsonify({"success": True}), 200

@app.route('/check_opencl', methods=['GET'])
def check_opencl():
try:
Expand Down
1 change: 0 additions & 1 deletion packages/Docking/src/apps/auto-dock-app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import {errInfo} from '@datagrok-libraries/bio/src/utils/err-info';

import {_package, BINDING_ENERGY_COL, POSE_COL, ERROR_COL_NAME} from '../utils/constants';
import {buildDefaultAutodockGpf} from '../utils/auto-dock-service';
import {fetchWrapper} from '@datagrok-libraries/utils/src/fetch-utils';

export type AutoDockDataType = {
ligandDf: DG.DataFrame,
Expand Down
12 changes: 4 additions & 8 deletions packages/Docking/src/tests/autodock-tests.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,10 @@ category('AutoDock', () => {
// Initialize the service if not already initialized
if (!adSvc)
adSvc = await getAutoDockService();

// Perform a health check to start the container (starts on request) if not ready
if (!adSvc.ready) {
await Promise.all([
fetchWrapper(() => adSvc!.healthCheck()),
adSvc.awaitStatus('started', 90000),
]);
}

const dockingContainer = await grok.dapi.docker.dockerContainers.filter('docking').first();
if (!dockingContainer.status.startsWith('started'))
await grok.dapi.docker.dockerContainers.run(dockingContainer.id, true);
} catch (err: unknown) {
// Log any errors during initialization
const [errMsg, errStack] = errInfo(err);
Expand Down
11 changes: 0 additions & 11 deletions packages/Docking/src/utils/auto-dock-service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -96,17 +96,6 @@ export class AutoDockService implements IAutoDockService {
}

// -- Methods --

async healthCheck(): Promise<void> {
const path = '/health_check';
const params: RequestInit = {
method: 'GET',
}
const adRes = await this.fetchAndCheck(path, params);
if (!adRes)
throw new Error('Health check failed.');
}

async checkOpenCl(): Promise<number> {
const path = '/check_opencl';
const params: RequestInit = {
Expand Down

0 comments on commit 7898d0e

Please sign in to comment.