upload task in background